使用语言 MySQL
使用工具 Navicat Premium 16
代码能力快速提升小方法,看完代码自己敲一遍,十分有用
目录
1.修改数据表结构
1.1 修改数据库的表名
1.2 修改数据表的字段
1.3 给数据表添加字段
1.4 删除数据表的字段
1.5 添加主外键约束
1.5.1 添加主键约束
1.5.2 添加外键约束
1.5.3 判断是主表(父表)还是外表(子表)
2.DML语句
2.1 插入数据语句
2.1.1 插入单行数据
2.1.2 插入多行数据
2.1.3 将查询结果插入新表
2.1.4 插入示例
2.1.5 使用时需注意
2.2 更新数据语句
2.2.1 更新数据语法
2.2.2 更新示例
2.3 删除数据语句
2.3.1 delete语法
2.3.2 truncate语法
2.3.3 TRUNCATE、Drop、Delete的区别
2.3.4 删除示例
在项目开发过程中,应尽量在设计阶段将项目中可能存在的问题考虑全面,将数据表设计完整。但是总会出现因业务变动等因素需要对已经创建好的数据表去做修改表的操作,如添加、删除字段等。如果采用将表删除后重建的方式实现,很容易造成已有数据的丢失,影响业务,风险比较大。此时,需要在原有表结构的基础上对表进行修改。MySQL可以通过alter关键字实现此功能。在修改操作之前,应先使用show tables语句确认该表是否存在于数据库中。
使用SQL语句对已创建的表修改表名,语法如下:
其中,to为可选,使用与否不影响结果。此语句仅修改表名,并不更改表的结构。
数据表中的字段包含字段名和数据类型,可以使用SQL修改字段名和修改数据存储类型及属性。语法如下:
其中,原字段名指修改前的字段名,新字段名为修改后的;数据类型指修改后的,若不需要修改数据类型,则与原数据类型保持一致,但数据类型不能为空;属性可为空,若修改时未添加属性,则修改后的字段无任何属性约束。
由于不同类型的数据存储释放和长度不同,修改数据类型可能会影响数据表中已有的数据,因此,已有数据情况下不轻易修改数据类型;
随着业务需求的变化,可能需要向已存在的表中添加新的字段。添加字段的语法格式如下:
在开发过程中,由于业务的改变,也有将数据表中的某个字段从表中移除的需求。删除字段的语法格式如下:
语法如下:
语法如下:
在MySQL中,InnoDB存储类型的表支持外键,MyISAM存储类型的表不支持外键。因此,对于MyISAM存储类型的表,也可以通过建立逻辑关联的方式保证数据的完整性和一致性。
1.查看这张表有没有其他表的主键,没有的话就是主表,有的话就是外表
2.语法中的主键名,就是设计表上方索引的名(一般以PK_字段名命名)
3.语法中的外键名就是设计表上方外键的名(一般以FK_字段名命名)
4.创建外键,第一个表名写外表,第二个外键字段写外表中需要创建关系的字段,最后一个写主表中的需要创建关系字段(从外写到主)
5.添加数据先添加主表,然后再添加外表
常用的DML语句——增、删、改语句的使用方法。
完成数据库搭建及数据表的创建后,就需要向数据表中添加数据。使用insert语句向数据表中插入数据的语法如下:
MySQL支持在一条SQL语句中依次向数据表中插入多条记录。插入多个值列表时,每个值列表之间用逗号分隔。语法格式如下:
除数字类型之外的所有数据类型都要加单引号包住;
在MySQL中,如果想把一个表中的数据查询后存储至另一张表的语法如下:
使用as放在对应的字段或者表名后面时,可以为这个前面的字段添加别名;
运行结果
这个代表,有4行受到影响;
查询结果
如果执行以上创建a表的语句后,执行结果如下:
查询的结果如下:
更新表中的数据也是软件开发经常使用的技能。通常使用update语句更新数据表中的数据。语法格式如下:
运行结果
运行后查询结果
如果truncate无法删除,可以先delete,然后使用:
ALTER TABLE table_name AUTO_INCREMENT = 重置从哪里开始;