数据操作

添加数据:

 insert into teacher (id, name, phone,  address) values(1, 'Frank',  '131423423', 'shanghai');
 
 insert into teacher (name, id, phone, address) values('Jack', '2',  '4543121', 'Beijing');
 
 insert into teacher values(3, 'Tom',  '565466746', 'Newyork');
 
 insert into teacher values(NULL, 'Tom', NULL, NULL);
 
 insert into teacher values(NULL, 'Jerry', NULL, default);
  1. 可以颠倒顺序,但是一定要一一对应

  2. 可以不写字段,但是一定要按照字段的顺序写

  3. 自增的可以不写,但是仍然会自增

  4. address由于已经默认可以为"暂时未知",所以可以写为default


插入多条语句:

 insert into teacher values(NULL, 'Jerry_1', NULL, default),(NULL, 'Jerry_2', NULL, default);

删除语句:

 delete from teacher where id=7;  
 // 删除teacher中id=7的语句,where表示定位
 
 delete from teacher where name="Tom"  
 // 删除名字=Tom的数据,由于name=Tomd的语句有多条,所以会删掉所有name=Tom的数据,使用中一般不按照多的删除,会造成灾难
 
 delete from student where age>30;
 // 删除age>30的数据
 
 delete from teacher;
 // 删除teacher表中的所有数据,占用内存,相当于遍历一遍表,然后删除
 
 truncate table;
 // 清空这张表,创建一张新表,但是表中已经清空
 // 用delete删除,再输入数据,会按照之前的顺序继续建立数据主键为8,9...;用truncate删除之后,再输入数据则是重新开始,主键为1,2...

更新表:

 update teacher set name='frank' where id=1;
 // 在teacher表中,把id=1的name改为frank
 // 避免where后面的字段值有重复的,会修改多个值
 
 update teacher set name='Tom',address='shenzhen' where phone=2222;
 // 在phone=2222的数据中把它的name修改为Tom,address修改为shenzhen
 
 update teacher set name='Tom',address='shenzhen';
 // 不加where,所有数据的name和address都改变了
 
 update teacher set address='shanghai' where phone='111111' or phone='22222';
 //满足俩个条件中的任意一个,都执行address'shanghai'

查询表数据(基本)

 select phone,adddress from teacher;
 // 在teacher中查找phone和address
 
 select * from teacher;
 // 查询所有的数据

SQL语句区分

 DDL:data definition languange
 // 数据库定义语言
 // create,alter,drop,show 都是数据库用的
 
 DML:data manipulation language
 // 数据操纵语言
 // insert,updata,delete,eslect
 
 DCL:data control language
 // 数据库控制语言

字符集编码问题

 show variables like 'character_set_%';
 // 在客户端乱码的时候输入这个命令查看编码是gbk还是utf8,实际开发中都是用utf8
 
 set character_set_client=gbk;
 // 将字符编码改为gbk

 

posted @ 2020-07-30 13:31  leoIOIO  阅读(35)  评论(0)    收藏  举报