Mysql数据库的一些操作

mysql中一条insert语句批量插入多条记录

mysql中null与“空值”的坑

复制代码
1、我字段类型是not null,为什么我可以插入空值

 


 

 

 

 

2、为毛not null的效率比null
NULL 其实并不是空值,而是要占用空间,所以mysql在进行比较的时候,NULL 会参与字段比较,所以对效率有一部分影响,
而且B树索引时不会存储NULL值的,所以如果索引的字段可以为NULL,索引的效率会下降很多。
3、判断字段不为空的时候,到底要 select * from table where column <> '' 还是要用 select * from table where column is not null 呢。

复制代码

 

 

 

 

关于mysql中INT(M) M含义     

外键的定义

推荐看的视频

 

 

 外键有几种约束,NO ACTION/RESTRICR表示父表(关联字段为主键的表)更新删除的时候,如果子表存在和父表在关联字段值相同的时候,

数据库会报错提示无法更新,此时需要先更改子表重复的值才可以修改删除父表,比如关联字段为年级,学生表里有些学生是6年级,

当父表(年级表)要删除六年级记录时,子表(学生表)如果存在六年级的学生则会报错,只有先把六年级的学生的年级字段修为为其他年级才可以进行删除。

SET NULL 表示父表删除记录时,对应的子表相关联的记录被设置为NULL,但是不删除,但CASCADE则是父记录删除,子记录也删除。

关于单行子查询返回多个行

 

 

子查询貌似只能返回一个表的字段,如果返回多个表的字段可以先建立一个视图
还有就是子查询如果返回的是多个值那么就用关键字in,单个值的话用on

 

表中有自增长主键时,插入数据的方法

posted @   你的雷哥  阅读(123)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
历史上的今天:
2019-02-23 历届试题 打印十字图
2019-02-23 备战蓝桥杯
点击右上角即可分享
微信分享提示