############### MySql中的增删改查操作 ################### show create database tedu; create database db2 charset utf8; show create database db2; #创建person表 use db2; create table person( name varchar(50), age int ) charset utf8; /* 插入数据(全表插入) */ -- 插入的顺序要一致 -- 插入的类型要一致 -- 整数可以传入字符串类型,但必须是纯数字的组成的字符串 -- 如果确定插入值,可以用null select * from person; insert into person values ('张三',34); insert into person values ('刘备',null); /* 指定指端插入记录 */ insert into person(name) values ('Tom'); insert into person(name, age) values ('罗友权',30); -- 建议按顺序,表中字段列出 /* 全表插入多表记录 */ insert into person values('大飞',21), ('二飞',18), ('三飞',16); insert into person(name) values ('Villa'),('jack'),('lossi'); #person 插入记录 -- 如果插入字符串包含单引号,那么可以用两个单引号将其转换成一个单引号 -- 单引号可以防止sql注入 create table user( username varchar(50), password varchar(50) )charset utf8; insert into user(username, password) values ('张张','234134'),('李晓峰','adfc'),('刘子龙','fadfsdg'),('王大飞','5464re'); select * from user where username='李晓峰' and password='adfc'; #但是输入用户名:xxxx 密码: 1' OR '1'='1 select * from user where username='xxxx' and password='1' OR '1'='1'; /* 修改数据 */ select * from person; update person set age=45 where name='刘备'; update person set name='关羽',age=42 where name='Tom'; /* 删除数据 */ delete from person where name='lossi'; delete from person where age<20; /* 数据类型 */ -- 数值、日期、字符串 -- 数值类型 tinyint smallint int[常用] bigint float doubl[常用] decimal(m,n)[常用] drop table tb1; create table tb1( a tinyint, b smallint, c int, d bigint(4), -- 指定显示的宽度,可以不指定 e float, f double, f1 double(6,4), -- 也可以像decimal一样显示,但不严格,一般不写 g decimal(6,4) -- 严格控制位数 ) insert into tb1(f1) values (22.33344); insert into tb1(g) values (22.33344); insert into tb1(f1) values (222.33344); insert into tb1(g) values (222.33344); select * from tb1; /* 字符串类型 定长字符串 char ,最长255,插入长度不足会自动补足,超过赋值失败, 不定长字符串 varchar ; 必须要指定长度; -- char的效率高于 varchar; text ; 65535个字节; */ /*日期类型 timestamp 时间戳 ,会自动记录插入的时间 YY-MM-DD HH:mm:SS */ create table tb3( a time, b date, c datetime, d timestamp ); select * from tb3; insert into tb3(a) values ('21:51:00'); update tb3 set b='2023-06-11' where a='21:51:00';