【数据库】CRUD-- 增删改 第二章 增删改文章目录第二章 增删改前言一、命名二、增1. 新增2. 指定列插入3. 多行插入4. 插入查询结果5. 查询的指定列插入6.注意三、改1.修改数据2.组内修改四、删除1. 删除数据2.drop和delete的区别五、截断表总结前言本期主要讲增 删 改, 会稍微使用到查 , 也就是select , 遇到会稍做讲解 , 详细讲解会放到下期~一、命名创建表时,命名有两种驼峰命名(studentName)蛇形命名(student_name)SQL一般用蛇形命名,因为数据库周边生态一般依赖于蛇行命名二、增1. 新增在上一期,我们讲了如何查看表,那么如何正在表里面添加数据呢?insert into 表名 valuse(数据,数据,数据);into可以省略,但是建议写.数据新增完又如何查询表结构呢?select * from 表名;实例:(这个表和上面举例的表不是一个)2. 指定列插入对于一组只知道不完整信息的数据 , 怎么指定指定列插入信息?insert into 表名(列名,列名) values (值,值);指定列插入注意:这里的列名需要是表里面原本有的.实例:3. 多行插入一句话一次性插入多组数据,怎么做?insert into 表名 values(值,值),(值,值);分三次也可以,但是每运行一次,客户端就会发送一个网络请求,分三次就会很慢,一次通信更快.实例:4. 插入查询结果如何把查询到的数据插入到表中?insert into 表名 select * from 另一个表名要注意的是查询出来的列的个数类型需要和插入的这个表是一样的5. 查询的指定列插入insert into 表名 (列名) select 列名 from 另一个表名;列的名字不影响主要是查询的和插入的类型个数要对应的上。实例:6.注意不是指定列的话 , 新增数据里的 类型和个数 要与表里面的匹配.SQL里面表示字符串常量可以用单引号表示也可以用双引号(因为没有字符类型),也可以数字,来表示数字,也就是隐式类型转换而JAVA里面就不可以这样,那么称SQL这种是弱类型,JAVA是强类型,不过平时写的时候尽量要类型匹配操作完之后,下面会有提示rows affects 数字,这个号数字代表影响了几行,要会看,可以错略判断是否符合预期注意:下面讲的修改和删除都是危险操作 , 操作时会有MySQL的安全机制拦截操作前可以先关闭:SET SQL_SAFE_UPDATES 0;完事后重新打开:SET SQL_SAFE_UPDATES 1;三、改1.修改数据update 表名 set 列名数据 where 列名原本数据;修改的前提是能查询到.针对查询到的结果进行修改.示例:注意:MySQL不支持 列名30 要写 列名列名302.组内修改按照降序将age超过30岁 , 并且use_age超过10的前两个人名字都改为 ‘王五’ 怎么弄?updata 表名 set 列名公式 where 要求 order by 列名 limit 数字;where 会针对后面的条件对表内数据进行筛查.order by 是跟据后面对应列里的数据进行排序 (针对字符串也可以排序 ) , 默认是升序 , 在语句后面加条件可修改desc 降序asc是升序limit就是针对后面所写数字来划分筛选后结果的修改范围示例:四、删除1. 删除数据如何删除表内数据?delete from表名;示例:2.drop和delete的区别上一期我们提到过drop , 为什么不用drop ? 二者之间有什么区别?让我们看看str3分别执行完这些操作后的查询结果drop table 表名;delete:drop:不难看出, drop 会连带着表内结构也删掉 而delete只是删除表内数据.五、截断表delete本质上是一条一条删的数据量大的话比较慢用截断表更快速更高效的删除表操作truncate 表名;truncate是站在文件角度把表对应的文件内容清空只能删全表不能指定条件.示例:总结本期讲了表的新增 , 修改 和 删除 , 还有少量的查询 .下期我们会重点介绍查询 , 敬请期待~

本周精选

本月热点