MySQL中DDL(create,delete,alter)语句操作

MySQL中DDL(create,delete,alter)语句操作:

1、创建表
建表语句的语法格式:

create table 表名 (
	字段1 数据类型 约束条件,
	字段2 数据类型 约束条件,
	...
	字段n 数据类型 约束条件
);

关于MySQL当中字段的常用数据类型:

	int	整数型
	bigint	长整型(相当于java中的long)
	float	浮点型
	double	双精度浮点型
	char	定长字符串
	varchar	可变长字符串(最长255个字符)
	date	日期类型(对应java中的java.sql.Date类型)
	BLOB	二进制大对象(存储图片,视频等流媒体信息)Binary Large OBject
	CLOB	字符大对象(存储较大文本,比如存储4个G的字符串)Character Large OBject

char和varchar怎么选择?
当某个字段中的数据长度不发生改变的时候,是定长的,例如:性别、生日等都是采用char。
当一个字段的数据长度不确定时,例如:姓名等都是采用varchar。

表名在数据库当中一般建议以:t_ 或者 tbl_开始。


2、insert语句插入数据

语法格式:insert into 表明(字段名1, 字段名2…) values(值1, 值2…);

注意:字段的数量和值数量相同,并且数据类型匹配。
这种写法对字段的顺序没有要求,只要后面的数据对应上了就行。

字段也可以省略不写:
insert into 表名 values(值1, 值2…);
注意:这种写法时,值的顺序和个数就固定了,不能乱写,只能按照表结构当中的字段顺序依次填写。

insert还可以一次插入多行数据:
insert into 表名(字段名1, 字段名2…) values(值1, 值2…), (值1, 值2…), (值1, 值2…);


3、表的复制

扫描二维码关注公众号,回复: 11547784 查看本文章

语法:create table 表名 as select语句;

将查询的结果集当做表创建出来。


4、将查询结果集插入到一张表中

语法:insert into 表名 select语句;

前提是查询到的结果集字段必须和插入表的字段匹配对应。


5、update修改表中数据
语法格式:update 表名 set 字段名1=值1, 字段名2=值2… where 条件;
注意:如果没有where语句,默认整张表数据全部更新。

例题:将部门10的loc修改为’上海’,将部门名称修改为’人事部’。
update dept set loc = ‘上海’, dname = ‘人事部’ where deptno = 10;

例题:更新学生表,将所有的学生年龄加1。
update student set age = age + 1;


6、删除表中记录
语法格式:delete from 表名 where 条件;
注意:如果没有where语句,默认删除整张表中的记录。

例题:删除10号部门的数据。
delete from dept where deptno = 10;

例题:删除部门表中所有的记录。
delete from dept;


用delete删除数据,数据不会释放,删掉后可以利用事务回滚恢复数据。

但有一个关键字叫做truncate,它可以直接剪掉表中所有的数据,只留下了字段名,使用前必须再三请求确认。
truncate table dept; // 表被截断,不可回滚,永久丢失


7、对表结构的修改:create,drop,alter
在实际开发中,对表结构的修改很少使用,如果硬要改,只需用工具修改即可。

修改表结构的语句不会出现在java代码中,出现在java代码中的sql语句包括:insert,delete,update,select。

增删改查有一个术语:CRUD操作
Create(增加),Retrieve(读取),Update(修改),Delete(删除)。

猜你喜欢

转载自blog.csdn.net/pipizhen_/article/details/107851262
今日推荐