
MySQL教程:从零开始创建数据表
下载需积分: 9 | 664KB |
更新于2024-07-28
| 125 浏览量 | 举报
收藏
"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,从而在实际工作中灵活运用。
相关推荐




















jgp_08
- 粉丝: 0
最新资源
- 探索四国中央摄影项目:Shikokuchuo.github.io幕后资料库
- 利用以太坊区块链技术验证二手车里程
- 容器内系统信息获取工具介绍
- GitHub上的danceupbrasil项目页面分析
- dotfiles配置管理:简化个人环境设置
- Phasmohelper网络应用:追踪游戏鬼痕证据的利器
- PUC Minas研究生项目:sigo-seguranca-api安全性API应用
- Linux软件SPI内核模块:实现与SD卡交互
- Fanshawe互动媒体设计课程项目:snider_m_TeamBio
- 纳维比尔加尼:神圣的亲切与仁慈
- 破解Gmail账户的Gemail-Hack Python脚本原理与实践
- 屋檐网网站本地运行与文档构建指南
- 揭秘Java项目usian-master背后的强迫力量
- 利用Docker创建支持ASP.NET Core的应用程序
- GitHub Actions自动化构建OpenWrt固件指南
- 挪威地区芽组织的葬礼派对即将详细发布
- Fernando和Nury Biasoli的个人官方网站展示
- Arweave Python客户端使用教程:集成、钱包操作与交易
- GitHub工作流:批量创建/更新仓库秘密实用工具
- Django开发的Python Web应用程序使用技巧
- 构建FastQC分析工具的Docker环境指南
- 使用Docker和Airflow为Python项目搭建管道流程
- MLH竞赛全流程代码解析
- BDP_cGAN项目:基于EMNIST数据集的条件GAN训练