用sql语句创建一个名为stuexpm 的数据库,并在其中创建表student和表score
时间: 2024-09-30 17:02:57 浏览: 27
在SQL中,首先你需要连接到数据库服务器并选择或创建一个数据库。假设你已经有一个数据库管理系统支持,比如MySQL,你可以按照以下步骤创建`stuexpm`数据库以及两张相关的表`student`和`scores`:
1. **创建数据库**:
```sql
CREATE DATABASE stuexpm; -- 如果数据库不存在,此命令将创建新的stuexpm数据库
```
2. **切换到新数据库**:
```sql
USE stuexpm;
```
3. **创建student表**:
```sql
CREATE TABLE student (
id INT PRIMARY KEY,
name VARCHAR(100),
age INT,
gender ENUM('Male', 'Female')
);
```
4. **创建score表**:
```sql
CREATE TABLE score (
id INT AUTO_INCREMENT PRIMARY KEY,
student_id INT,
subject VARCHAR(50),
grade DECIMAL(3,1),
FOREIGN KEY (student_id) REFERENCES student(id)
);
```
这里`score`表通过`student_id`字段与`student`表建立关联,`FOREIGN KEY`用于保证数据完整性。
相关问题
使用sql语句在studentsdb数据库中创建数据表student_info、curriculum、grade
在`studentsdb`数据库中创建表,你可以使用以下SQL语句分别创建`student_info`、`curriculum`和`grade`这三个表:
1. 学生信息表 (`student_info`):
```sql
CREATE TABLE student_info (
id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT,
email VARCHAR(100)
);
```
2. 课程表 (`curriculum`):
```sql
CREATE TABLE curriculum (
course_id INT PRIMARY KEY,
course_name VARCHAR(100),
instructor VARCHAR(50),
credits INT
);
```
3. 成绩表 (`grade`):
```sql
CREATE TABLE grade (
student_id INT,
course_id INT,
score DECIMAL(3,1),
FOREIGN KEY (student_id) REFERENCES student_info(id),
FOREIGN KEY (course_id) REFERENCES curriculum(course_id),
PRIMARY KEY (student_id, course_id)
);
```
每个表都定义了其字段以及主键和外键约束,用于关联其他表。
用sql语句创建一个sc表,包括sno,cno,score,其中sno,cno为主键和外键
可以使用以下的 SQL 语句来创建一个名为 sc 的表,包含 sno、cno 和 score 三个字段,其中 sno 和 cno 分别作为主键和外键:
```
CREATE TABLE sc (
sno VARCHAR(20),
cno VARCHAR(20),
score INT,
PRIMARY KEY (sno, cno),
FOREIGN KEY (sno) REFERENCES student(sno),
FOREIGN KEY (cno) REFERENCES course(cno)
);
```
其中,`VARCHAR(20)` 表示长度为 20 的字符串类型,`INT` 表示整数类型。`PRIMARY KEY` 表示将 `sno` 和 `cno` 两个字段作为主键,`FOREIGN KEY` 表示将 `sno` 和 `cno` 两个字段分别作为外键,参考的是其他表中的主键。在这个例子中,我们假设已经有了名为 `student` 和 `course` 的表,它们的主键分别是 `sno` 和 `cno`。