mysql DDL语句
sql语言分为三个级别。
1、ddl 语句 ,数据定义语句,定义了数据库、表、索引等对象的定义。常用语句包含:create、drop、alter。
2、dml 语句 ,数据操纵语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性,常用语句包含insert、delete、update、select等。
3、dcl语句,数据控制语句,用于控制不同数据对象访问级别的语句。定义了数据库、表、表、用户的访问权限和完全级别。常用的语句包括grant、revoke等。
DDL语句:
1、建库、删库:
建库:create database db名 default charset=utf8;
删库:drop database db名;
2、表操作
2.1 建表1:
create table table_name(col1 type1 [not null] [primary key],col2 type2 [not null])
如:
create table person_info ( person_id smallint(5) unsigned auto_increment, name varchar(50) not null comment 'person_name', country varchar(60) default 'china', salary decimal(10,2) default 0.00 comment 'salary', primary key (person_id) )engine=innodb default charset=utf8;
括号外设置引擎与默认编码
备注信息:comment
默认赋值:default关键词
主键:一般放在最后。primary key person_id
引擎:engine innodb
备注信息:comment
默认赋值:default关键词
主键:一般放在最后。primary key person_id
引擎:engine innodb
建表2:创建一个新表,与原表的表结构相同,但是并无数据。
create table table_nameliketable_name1;
2.2 修改表结构
alert table table_name MODIFY col_name column_definition [FIRST | AFTER col_name]#修改字段类型
alert table table_name ADD col_name column_definition [FIRST | AFTER col_name]#增加字段
alert table table_name DROP col_name#删除字段
alert table table_name CHANGE old_col_name new_col_name column_definition [FIRST|AFTER col_name]#修改字段名
如:将country字段修改长度为50个字节,并放在salary字段后。以下两种都可行。
alter table table_name change country country varchar(50) default 'china' after salary;
alter table table_name modify country varchar(50) default 'china' after salary;
修改字段时,注意原有默认值,修改命令时默认值仍需要添加
2.3 查看表结构
desc table_name;
2.4 删除表
drop table table_name;
插入语句:
insert into person_info(person_id,name,country,salary) values(1,'yu','china','2');#插入全部字段值,单条数据
insert into person_info(name) values('yu');#单条数据,只选插入的字段值。
insert into person(name) valuse('a'),('b');#同时插入多条数据
插入数据时,自增字段不需要添加,默认值可不输入。