MySQL创建数据库表的sql语言,以下是表的结构: 表名:航班信息表 字段名 数据类型 说明 航司 varchar(10)航空公司名称航班号 varchar(10)航班号码共享标志 varchar(10)共享航班标志共享航班号 varchar(10)共享航班号码航班时间 datetime 航班时间实际起飞时间 datetime 实际起飞时间预计起飞时间 datetime 预计起飞时间出发点 varchar(50)出发地点出发点代码 varchar(10)出发地点代码实际到达时间 datetime 实际到达时间预计到达时间 datetime 预计到达时间目的地 varchar(50)目的地点 目的地代码 varchar(10)目的地点代码到达准点率 foat 到达准点率 航班状态 varchar(20)航班状态 异常 varchar(50)异常情况
时间: 2023-04-10 08:00:38 浏览: 235
以下是创建航班信息表的SQL语句:
CREATE TABLE 航班信息表 (
航司 varchar(10),
航班号 varchar(10),
共享标志 varchar(10),
共享航班号 varchar(10),
航班时间 datetime,
实际起飞时间 datetime,
预计起飞时间 datetime,
出发点 varchar(50),
出发点代码 varchar(10),
实际到达时间 datetime,
预计到达时间 datetime,
目的地 varchar(50),
目的地代码 varchar(10),
到达准点率 float,
航班状态 varchar(20),
异常 varchar(50)
);
相关问题
任务描述 相关知识 选择数据库 创建数据表 显示数据表结构 任务要求 任务描述 本关任务:建立数据表 为了完成本关任务,你需要掌握: 如何选择数据库 如何创建数据表 设置数据表的原则 如何显示数据表的结构 相关知识 选择数据库 命令格式: use 数据库名 选择数据库为当前数据库 创建数据表 创建数据表的命令格式: CREATE TABLE 表名 ( 列名1 数据类型 字段属性, 列名2 数据类型 字段属性, … 列名n 数据类型 字段属性 ) 常用的数据类型如下 枚举型和集合型 在字段类型选择的时候, 对于数值类型,ZEROFILL 表示前导零填充数值类型值以达到列的显示宽度。 auto_increment表示对于数值型字段自动增加 not null表示不允许该字段值为null 在建立数据表的时候,。主键约束(Primary Key constraint)要求主键列的数据唯一,并且不允许为空。 在建立数据表的时候,字段名 数据类型 PRIMARY KEY 显示数据表结构 describe 数据表名; 查看数据表的基本结构 任务要求 切换到教务系统(jwxt)数据库 创建学生数据表(student)数据表 查看数据表的详细结构 数据表结构如下: 开始你的任务吧,祝你成功!
### 使用 MySQL 创建数据表及查看结构
#### 数据库的选择
在 MySQL 中,可以通过 `USE` 命令来选择要操作的数据库。该命令用于指定当前会话所使用的数据库名称。其基本语法如下:
```sql
USE database_name;
```
通过执行此命令,后续所有的 SQL 操作都会默认作用于选定的数据库。
---
#### 创建数据表
创建数据表的核心在于使用 `CREATE TABLE` 语句。以下是标准的语法格式[^2]:
```sql
CREATE TABLE table_name (
column1 datatype,
column2 datatype,
...
);
```
其中:
- **table_name** 是新表的名字;
- **columnN** 表示列名;
- **datatype** 定义每列的数据类型及其属性。
例如,下面是一个简单的例子,展示如何创建名为 `employees` 的表格:
```sql
CREATE TABLE employees (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50),
position VARCHAR(30),
salary DECIMAL(8, 2)
);
```
上述代码片段中定义了一个员工记录表,包含四个字段:唯一标识符 (`id`)、姓名 (`name`)、职位 (`position`) 和薪水 (`salary`)。
---
#### 查看数据表结构
为了验证已创建的数据表是否符合预期设计,或者了解现有表的具体细节,MySQL 提供了两种方法——`DESCRIBE` 和 `SHOW CREATE TABLE`。
##### 方法一:DESCRIBE 或 DESC
这是最简便的方式之一,用来快速获取关于某张特定表的基本信息,比如各列的名称、类型以及其他约束条件等。具体形式为:
```sql
DESCRIBE table_name;
-- 或者缩写成
DESC table_name;
```
例如,如果想检查之前建立好的 `employees` 表格,则可键入以下查询指令:
```sql
DESCRIBE employees;
```
这将返回有关每一栏位的相关资料列表[^1]。
##### 方法二:SHOW CREATE TABLE
当需要更详尽的信息时,如完整的建表语句连同存储引擎设置与字符集编码等内容,则应该采用这种方式。它不仅能够重现原始声明过程中的每一个选项设定,还特别适用于复制迁移场景下保持一致性需求的情况。调用方式如下所示[^3]:
```sql
SHOW CREATE TABLE table_name\G
```
注意这里的反斜杠加字母 G(`\G`)是为了让输出更加清晰易读而附加的一个终端显示控制标志,并不影响实际功能实现效果[^4]。
对于先前提到过的 `tb_emp1` 实例而言,对应的完整构建脚本可能看起来像这样子:
```sql
CREATE TABLE `tb_emp1` (
`id` int(11) DEFAULT NULL,
`name` varchar(25) CHARACTER SET gb2312 COLLATE gb2312_chinese_ci DEFAULT NULL,
`deptId` int(11) DEFAULT NULL,
`salary` float DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=gb2312 ROW_FORMAT=DYNAMIC ;
```
以上即包含了所有必要的组成部分说明。
---
mysql在右侧命令行中操作,创建数据库MyDb,在MyDb下依次创建(存储引擎均为InnoDB): 1、表Department,表结构如下: 字段名称 数据类型 备注 deptId INT 系编号 deptName VARCHAR(10) 系名称 schId INT 所在学院编号 2、表School,表结构如下: 字段名称 数据类型 备注 schId INT 学院编号 schName VARCHAR(10) 学院名称 3、表Class,表结构如下: 字段名称 数据类型 备注 clsId INT 课程编号 clsName VARCHAR(10) 课程名称 4、表Grade,表结构如下: 字段名称 数据类型 备注 stuId INT 学生编号 clsId INT 课程编号 grade INT 成绩
### 创建 MyDb 数据库
要在 MySQL 中创建名为 `MyDb` 的数据库,可以使用以下 SQL 命令:
```sql
CREATE DATABASE IF NOT EXISTS MyDb;
```
这条语句会检查是否存在同名数据库;如果不存在,则创建新的数据库[^1]。
### 使用 InnoDB 存储引擎创建表
#### 切换至目标数据库
在执行建表操作前,需先切换到刚创建的数据库 `MyDb`:
```sql
USE MyDb;
```
#### 创建 Department 表
以下是创建 `Department` 表的 SQL 语句。该表包含三个字段:`deptId`, `deptName`, 和 `schId`,并指定其存储引擎为 InnoDB。
```sql
CREATE TABLE Department (
deptId INT PRIMARY KEY AUTO_INCREMENT,
deptName VARCHAR(255) NOT NULL,
schId INT NOT NULL,
FOREIGN KEY (schId) REFERENCES School(schId)
) ENGINE=InnoDB;
```
此命令定义了一个自增主键 `deptId`,一个不可为空的字符串类型的部门名称 `deptName`,以及外键约束关联学校 ID (`schId`) 至另一张表中的对应列[^2]。
#### 创建 School 表
接着我们来构建 `School` 表,它只有两个属性——唯一标识符 `schId` 及对应的校名 `schName`。
```sql
CREATE TABLE School (
schId INT PRIMARY KEY AUTO_INCREMENT,
schName VARCHAR(255) UNIQUE NOT NULL
) ENGINE=InnoDB;
```
这里设置了 `schName` 字段具有唯一性以防止重复录入相同名字的院校记录。
#### 创建 Class 表
对于班级信息管理而言,我们需要建立一张叫做 `Class` 的表格,其中包含了班号(`clsId`)及其描述性的称呼(`clsName`)两项数据项。
```sql
CREATE TABLE Class (
clsId INT PRIMARY KEY AUTO_INCREMENT,
clsName VARCHAR(255) NOT NULL
) ENGINE=InnoDB;
```
上述脚本同样采用了自动增长机制作为主关键字,并且规定了类别标签不能为空值的情况发生。
#### 创建 Grade 表
最后一步就是设立成绩档案系统所必需的成绩单结构体 - 即 `Grade` 实体集。这个实体由学生编号(`stuId`)、所属课程组别代号(`clsId`)还有实际得分情况三者共同组成。
```sql
CREATE TABLE Grade (
stuId INT PRIMARY KEY AUTO_INCREMENT,
clsId INT NOT NULL,
grade DECIMAL(5, 2),
FOREIGN KEY (clsId) REFERENCES Class(clsId)
) ENGINE=InnoDB;
```
在这里值得注意的是分数采用十进制数表示法保留两位小数精度,同时通过设置外部参照关系确保每条学生成绩都隶属于某个特定课堂之中。
阅读全文
相关推荐
















