学生数据库有3个表,其数据结构如下: student 字段名 学号 姓名 性别 出生日期 院系 数据类型 char (8) varchar (20) char (2) date varchar (20) 说明 主键 非空 无 无 无 course 字段名 课程号 课程名称 学分 数据类型 char (4) varchar (30) int 说明 主键 非空 无 sc 字段名 学号 课程号 成绩 数据类型 char (8) char (4) real 说明 外键 外键 无 其中, sc 表的学号与课程号为主键。 (1) 以下创建数据表 course 的 T - SQL 语句中,有一个错误行,请写出错误的行号并更正(如行号表示为3#)。 1#: CREATE DATABASE course 2#:( 3#:课程号 char (4) PRIMARY KEY , 4#:课程名称 varchar (30) NOT NULL , 5#:学分 int 6#:) (2)写出创建 sc 表的 T - SQL 语句。 (3)写出从 student 表中删除院系字段的 T - SQL 语句。
时间: 2024-01-15 21:05:49 浏览: 60
(1) 正确的创建数据表 course 的 T-SQL语句应该是:
CREATE TABLE course (
课程号 char(4) PRIMARY KEY,
课程名称 varchar(30) NOT NULL,
学分 int
);
错误行为第2行,应该删除括号。
(2) 创建 sc 表的 T-SQL 语句如下:
CREATE TABLE sc (
学号 char(8),
课程号 char(4),
成绩 real,
PRIMARY KEY (学号, 课程号),
FOREIGN KEY (学号) REFERENCES student(学号),
FOREIGN KEY (课程号) REFERENCES course(课程号)
);
(3) 从 student 表中删除院系字段的 T-SQL 语句如下:
ALTER TABLE student DROP COLUMN 院系;
相关问题
创建score表结构如下: 字段 数据类型 主键 学号 Int(8) 否 课程名 varchar(20) 否
好的,你创建score表的SQL语句应该是这样的:
```
CREATE TABLE score (
学号 INT(8) NOT NULL,
课程名 VARCHAR(20) NOT NULL,
PRIMARY KEY (学号, 课程名)
)
```
其中,学号和课程名作为联合主键,不允许为空。
创建”人员”表,表结构如下: 字段名 字段类型 约束 身份证号 Char(18) 非空,主键 姓名 varChar(10) 非空 性别 Char(1) 非空 出生日期 Date 户籍 varChar(30)
可以使用如下的SQL语句在MySQL数据库中创建一个名为“person”的表,并设置相应的字段、类型和约束:
```
CREATE TABLE person (
id CHAR(18) NOT NULL PRIMARY KEY,
name VARCHAR(10) NOT NULL,
gender CHAR(1) NOT NULL,
birthdate DATE,
domicile VARCHAR(30)
);
```
这条SQL语句会创建一个名为“person”的表,其中包含五个字段,分别是“id”、“name”、“gender”、“birthdate”和“domicile”。
其中,“id”字段为Char(18)类型,且设置为非空和主键约束,用于存储人员的身份证号码;“name”字段为varChar(10)类型,且设置为非空约束,用于存储人员姓名;“gender”字段为Char(1)类型,且设置为非空约束,用于存储人员性别;“birthdate”字段为Date类型,用于存储人员出生日期;“domicile”字段为varChar(30)类型,用于存储人员户籍信息。