MySQL教程:从零开始创建数据表
需积分: 9 12 浏览量
更新于2024-07-28
收藏 664KB DOC 举报
"MySQL从入门到精通的教程,涵盖了创建数据库和数据表的基础知识,强调了数据完整性约束,如主键、外键和非空约束。教程通过实例介绍了创建表的语法,包括指定表名、字段名、数据类型以及约束条件。"
在MySQL中,创建数据表是数据库管理的基础步骤,这涉及到定义表格结构,设置不同列的数据类型,并应用各种约束来确保数据的准确性和一致性。首先,我们需要明确当前操作的数据库,通过`USE <数据库名>`语句来切换。如果未指定数据库,系统会返回"No database selected"的错误。
创建数据表的基本语法是`CREATE TABLE`,它需要提供表名和各列的详细信息。例如,创建一个名为`tb_emp1`的员工表,包含`id`、`name`、`deptId`和`salary`四列,对应的SQL语句如下:
```sql
CREATE TABLE tb_emp1 (
id INT(11),
name VARCHAR(25),
deptId INT(11),
salary FLOAT
);
```
在这里,`id`、`name`、`deptId`和`salary`是列名,它们的数据类型分别为`INT(11)`、`VARCHAR(25)`、`INT(11)`和`FLOAT`。`INT(11)`表示整数类型,`VARCHAR(25)`表示最多可以存储25个字符的字符串,`FLOAT`用于存储浮点数。括号内的数字代表显示宽度,但对整数类型,它不影响实际能存储的最大值。
在创建表时,我们还可以添加约束条件,例如主键(PRIMARY KEY)、外键(FOREIGN KEY)和非空(NOT NULL)约束。主键约束用于唯一标识每条记录,通常用于连接表之间的关系。例如,如果我们想让`id`作为主键,可以这样修改创建语句:
```sql
CREATE TABLE tb_emp1 (
id INT(11) PRIMARY KEY,
name VARCHAR(25),
deptId INT(11),
salary FLOAT
);
```
非空约束确保该列的值不能为空,比如员工的姓名:
```sql
CREATE TABLE tb_emp1 (
id INT(11) PRIMARY KEY,
name VARCHAR(25) NOT NULL,
deptId INT(11),
salary FLOAT
);
```
而外键约束用于维护两个表之间的参照完整性,例如,`deptId`可能引用另一个表(如`tb_dept`)的`id`,表示员工所属部门:
```sql
CREATE TABLE tb_emp1 (
id INT(11) PRIMARY KEY,
name VARCHAR(25) NOT NULL,
deptId INT(11) REFERENCES tb_dept(id),
salary FLOAT
);
```
在这个例子中,`deptId`列是`tb_emp1`的外键,关联`tb_dept`表的`id`主键。
了解这些基本概念后,你可以进一步探索其他高级特性,如索引(INDEX)、触发器(TRIGGER)、存储过程(STORED PROCEDURE)等,以及更复杂的查询和操作,如联接(JOIN)、子查询(SUBQUERY)、事务处理(TRANSACTION)等。这些知识将帮助你深入理解和熟练掌握MySQL,从而在实际工作中灵活运用。
2017-09-14 上传
2018-12-03 上传
2021-06-21 上传
2023-07-27 上传
2021-12-18 上传
2024-11-15 上传
2024-11-15 上传
jgp_08
- 粉丝: 0
- 资源: 2
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常