对course表建立如下约束:course_name非空,credit取值在1-6之间
时间: 2024-02-25 18:59:33 浏览: 77
您可以使用如下的SQL语句来对`course`表添加约束:
```
ALTER TABLE course
ADD CONSTRAINT course_name_not_null CHECK (course_name IS NOT NULL),
ADD CONSTRAINT credit_range CHECK (credit >= 1 AND credit <= 6);
```
其中,`course`是您要添加约束的表名,`course_name`和`credit`分别是要添加约束的字段名。第一条`ADD CONSTRAINT`语句添加了一个约束,要求`course_name`非空;第二条`ADD CONSTRAINT`语句添加了另外一个约束,要求`credit`取值在1-6之间。通过这两个约束,您可以保证`course_name`和`credit`字段的数据符合您的要求。
相关问题
创建新的数据库,命名为test_system;创建对应数据库表。为每个表建立主键。对course表建立如下约束:course_name非空,credit取值在1-6之间。为相应表创建外键,建立参照完整性约束。修改student和teacher表,分别增加一列用于存储学生和教师的E_mail地址。创建course2表,与course表结构一样,删除course2表。
以下是使用SQL语句来完成您的要求:
1. 创建新的数据库test_system:
```
CREATE DATABASE test_system;
```
2. 连接到test_system数据库,创建对应的表:
```
USE test_system;
-- 创建student表
CREATE TABLE student (
id INT PRIMARY KEY,
name VARCHAR(50),
gender VARCHAR(10),
email VARCHAR(100)
);
-- 创建teacher表
CREATE TABLE teacher (
id INT PRIMARY KEY,
name VARCHAR(50),
gender VARCHAR(10),
email VARCHAR(100)
);
-- 创建course表
CREATE TABLE course (
id INT PRIMARY KEY,
course_name VARCHAR(50) NOT NULL,
credit INT,
CONSTRAINT credit_range CHECK (credit >= 1 AND credit <= 6)
);
-- 创建course2表
CREATE TABLE course2 LIKE course;
```
3. 修改course表,添加约束:
```
-- 添加约束
ALTER TABLE course
ADD CONSTRAINT course_name_not_null CHECK (course_name IS NOT NULL);
```
4. 为相应表创建外键,建立参照完整性约束:
```
-- 为student表添加外键
ALTER TABLE student
ADD CONSTRAINT student_course_id_fk FOREIGN KEY (course_id) REFERENCES course(id);
-- 为teacher表添加外键
ALTER TABLE teacher
ADD CONSTRAINT teacher_course_id_fk FOREIGN KEY (course_id) REFERENCES course(id);
```
5. 修改student和teacher表,分别增加一列用于存储学生和教师的E_mail地址:
```
-- 修改student表
ALTER TABLE student
ADD COLUMN email VARCHAR(100);
-- 修改teacher表
ALTER TABLE teacher
ADD COLUMN email VARCHAR(100);
```
6. 删除course2表:
```
DROP TABLE course2;
```
数据库,包括表 student(student_id,student_name,sex,民族,手机号,身份证号,…) course(course_id,course_name,学分,课程类别) course_score(id, student_id,course_id,score) (一)写出以下SQL语句: 1、创建student表、course表及course_score表(学生选课表): student表主键为student_id字段,course表主键为课程号字段; 外键约束:course_score. student_id,course_score. course_id; 设置课程类别的默认值为必修; 设置姓名非空; 设置身份证号唯一约束; 设置检查约束,sex字段取值男或女;
创建student表的SQL语句:
```
CREATE TABLE student (
student_id INT PRIMARY KEY,
student_name VARCHAR(50) NOT NULL,
sex CHAR(1) CHECK (sex IN ('男', '女')),
nation VARCHAR(20),
phone VARCHAR(20),
id_card VARCHAR(18) UNIQUE,
...
);
```
创建course表的SQL语句:
```
CREATE TABLE course (
course_id INT PRIMARY KEY,
course_name VARCHAR(50),
credit INT,
category VARCHAR(20) DEFAULT '必修'
);
```
创建course_score表的SQL语句:
```
CREATE TABLE course_score (
id INT PRIMARY KEY,
student_id INT,
course_id INT,
score FLOAT,
FOREIGN KEY (student_id) REFERENCES student(student_id),
FOREIGN KEY (course_id) REFERENCES course(course_id)
);
```
以上SQL语句中,外键约束用FOREIGN KEY关键字来实现,唯一约束用UNIQUE关键字来实现,检查约束用CHECK关键字来实现。
阅读全文