mysql中SQL语句

#一、创建数据表格create 语句
create table 表名称(
字段1 类型(长度) 约束,
字段2 类型(长度) 约束,
字段3 类型(长度) 约束
);

##字段名称就是每一列的名称如id, name ,department,sex…根据不同场景需要不同信息而进行取名;
类型会根据不同的使用目的而规定不同的数据类型;
##数值:int(默认为11位)
字符型:varchar 或者char型,两者具体的区别,请自行搜索;一般常用varchar
##约束:是对字段的一种设置或者限制;
主键约束: primary key ,每个表都需要一个主键,主键约束该列的数据不能重复,且不能为空
唯一约束: unique 不能重复,可以为空
自动增长型约束: auto_increment 一般配合主键使用

eg:
create TABLE dept(
did int,
dname VARCHAR(30)
);
//没有设置数据约束
create TABLE emp(
eid int PRIMARY key auto_increment,
ename varchar(30),
sal DOUBLE,
dno int
);
//设置有主键约束和自动增长约束
注意:最后不能有逗号

#二、更改表格设置:alter语句

select database(); //显示当前数据库
show tables;//显示数据中所有表
desc 表名称;//显示表中的所有字段
drop table 表名称; //删除表
rename table 旧表名 to 新表名;//修改表的名称

alter table 表名称 add 字段名称 数据类型(长度) 约束; //对已存在的表进行字段
alter table 表名称 modify 字段名称 数据类型(长度) 约束;//修改存在字段的属性
alter table 表名称 drop 字段名称 ; //删除表中的某个字段
alter table 表名称 change 旧字段 新字段 数据类型(长度) 约束;//字段改名

#三、表中插入数据:insert 语句
insert into 表名(字段1,字段2,字段3…)values (值1,值2,值3…) 对应字段需要与其值对应,字符类型与时间类型需要用单引号
插入全部字段值:
insert into dept values(1,‘研发部’);
insert into dept values(2,‘人事部’);
insert into dept values(3,‘行政部’);
insert into dept values(4,‘销售部’);

insert into emp values (null ,‘聪聪’,15000,1);
insert into emp values (null ,‘邦邦’,5000,2);
insert into emp values (null ,‘图图’,6000,2);
insert into emp values (null ,‘熊大’,55000,1);
insert into emp values (null ,‘熊二’,13000,1);

只插入部分字段值,其他值默认为空
insert into dept (did) value(5);
insert into dept (dname)value(“财务部”);

insert into emp (eid,ename) values (null,“光头强”);
insert into emp (ename,sal) values (“光头强”,5000);
//此处主键约束 可以自增,故当插入数据时可以不给主键字段赋值,如果主键未设置自增,插入数据时需要给主键赋值;

#四,表中删除数据:

##通过delete 语句删除表中信息
delete from 表名 where 条件;
delete from dept where dname =‘销售部’;where 后添加所要删除数据满足的条件
delete from dept 不加条件删除表中的全部数据;

##通过truncate 语句删除全部信息
truncate 表名 eg:truncate detp;

##drop 删除表结构 drop table detp;

delete 、truncate 和drop的区别
效率方面:drop > truncate > delete
  1、delete语句,是DML语句不会自动提交,truncate语句通常被认为是DDL语句能被自动提交,Drop语句是DDL,删除结构
  2、delete语句,后面可以跟where子句,通常指定where子句中的条件表达式,只删除满足条件的部分记录,而truncate语句,只
能用于删除表中的所有记录。
  3、truncate语句,删除表中的数据后,向表中添加记录时,自动增加字段的默认初始值重新从1开始,而使用delete语句,删除表
中所有记录后,向表中添加记录时,自动增加字段的值,为删除时该字段的最大值加1,也就是在原来的基础上递增。
  4、delete语句,每删除一条记录,都会在日志中记录,而使用truncate语句,不会在日志中记录删除的内容,因此,truncate语句的
执行效率比delete语句高。
  5.truncate删除表中的所有行数据,但表结构不变.新行的计数值会归零,(比如在约束了auto_increment时)如果想保留delete
  6、drop删除时,既删除表中所有数据,而且也删除表结构,如果需要在对表格进行操作,需要重新建立新表格;而truncate语句在删除表中所有记录后,仍会保留表结构,我们之后只需进行数据的插入等操作,不需重新建立表

#五、更新表中数据Update语句
update 表名称 set 字段1=值1, 字段2=值2 where 条件;

update emp set image = ‘Imae’; //修改全部数据
update emp set birthday=‘1998-06-05’ where name=‘张三’; //只修改满足条件的数据
update emp set salory =salory+1000 where id =5; //根据已有值进行更新数据
update emp set birthday=‘1998-06-05’ where name=‘芙蓉’ and image =‘Image’;

#六、查找数据: select 语句查找数据
由于查找数据较为复杂,敬请等待下一篇文章

如果对文章感到满足,请顺手点下小红心,谢谢支持!
如果对文章感到疑惑,请给我留言,谢谢!

发布了2 篇原创文章 · 获赞 0 · 访问量 22

猜你喜欢

转载自blog.csdn.net/LP5956/article/details/105464164