/*
数据的写入
名称 : 库名 表名 字段名 用 反引号包裹
数据 : 字符串数据使用单引号包裹
给所有字段都要写入数据
INSERT INTO `表名` VALUES(
数据内容
)
给指定字段输入数据
INSERT INTO `表名` (指定字段) VALUES(
数据内容
)
输入数据是 DEFAULT 执行默认值效果
INSERT INTO `user2` VALUES(
DEFAULT,'张三',DEFAULT,'男','吃,喝','12345678901',DEFAULT,DEFAULT
);
INSERT INTO `user2` (`name`,`age`,`hobby`,`phone`) VALUES(
'李四',20,'吃,喝,玩,乐','12345678902'
);
数据的修改
修改所有的数据
UPDATE `表名` SET `字段名` = 数值数据;
// 在SQL语句中,没有 ++ -- += -= 等等这些运算符
UPDATE `user2` SET `age` = `age` + 1;
修改符合约束条件的指定数据
UPDATE `表名` SET `字段名` = 数值数据 WHERE 约束条件;
// 给 id数据是1 的内容 age字段数据+1
赋值操作 比较判断
UPDATE `user2` SET `age` = `age` + 1 WHERE `id` = 1;
约束条件都是针对 字段中的数据设定的
支持 > < >= <= =(等于判断)
= 等号有两个作用 比较判断 和 赋值操作
支持 逻辑运算符 AND与 OR或 NOT非
数据的删除
删除指定数据
删除指定数据,会将数据的id主键值保留,不会一起删除id主键值
新增数据,默认会延续之前id主键值之后的数值
在创建MySQL数据库 库结构,表结构时,会自动生成系统相关的索引,表结构
是独立于我们创建的表结构的内容
用来记录存储我们创建的表结构的信息
例如 id主键值 UNIQUE KET 唯一索引 外键索引等
这些信息会独立创建一个表结构来存储
我们当前删除数据,删除的是我们自己创建的表结构中的数据
不会删除系统表结构中,存储的 id主键值 UNIQUE KET 唯一索引 外键索引等 信息
数据库中id主键值不连续是正常现象
可以指定id主键值,给没有数据的id主键值写数据
INSERT INTO `user2` (`id`,`name`,`age`,`hobby`,`phone`) VALUES(
2,'王五',120,'吃,喝,玩','12345678903'
);
已有数据的id主键值不能重新写入数据,只能修改数据
// 删除符合约束条件的指定数据
DELETE FROM `表名` WHERE 约束条件
DELETE FROM `user2` WHERE `id` = 2;
// 删除所有的数据,但是保留id主键值
DELETE FROM `表名`;
// 删除所有数据,不能删除指定数据
// 会同时删除id主键值
TRUNCATE TABLE `表名`;
TRUNCATE 和 DELETE 区别
TRUNCATE 本质是 完全删除表结构,然后重新创建一个设定相同的空的表结构
系统创建的存储当前表结构相关信息的表结构,也会被一起删除,重新创建
TRUNCATE 不能触发触发器,不能执行事务的回滚操作
DELETE 本质是 删除表结构中的数据内容
系统的表结构会被保留
DELETE 可以触发触发器,支持执行事务的回滚操作
触发器,简单理解就是 js中的事件
*/