
SQL语句DDL
1.建库和表
1.数据库的库定义:
create database drop database alter database2.建库规范:
- 库名字不能有大写字母
- 不能数字开头
- 字符集必须加
3.表定义
create table stu( id int not null primary key auto_increament comment '学号', name varchar(50) not null comment '姓名', age tinyint unsigned not null default 18 comment '年龄', gender enum('m','f') not null default 'm' comment '性别', birthday datetime not null default now() comment '入学时间' );
2.数据表的增删改查
- 删除表(危险操作!!!!)
DROP TABLE xxx;
- 修改表定义
ALTER TABLE xxx SHOW TABLES;1、修改表名
ALTER TABLE stu RENAME student; DESC student;2、添加列和列定义
ALTER TABLE student ADD age INT;3、添加多个列
ALTER TABLE student ADD gender VARCHAR(20) , ADD qq INT;4、指定位置进行添加列
4.1表中的首列添加一列ALTER TABLE student ADD classid VARCHAR(20) FIRST;4.2在sage列后面添加一个telnum列
ALTER TABLE student ADD telnum INT AFTER age;4.3 在sname列前面添加一个birthday列
ALTER TABLE student ADD birthday VARCHAR(30) AFTER sid;
- 修改列及列定义
3.1 将birthday 数据类型替换为 DATETIMEALTER TABLE student MODIFY birthday DATETIME ; DESC student;3.2 将birthday列名字改为birth
ALTER TABLE student CHANGE birthday birth DATETIME;
- 删除列及列定义
ALTER TABLE student DROP age; ALTER TABLE student DROP gender;
3.复制表sql
1.对已有表创建一个结构相同的表
CREATE TABLE stu LIKE student;2.创建一个结构(部分)以及数据一模一样的表
USE world; SHOW TABLES; SELECT * FROM city; CREATE TABLE city1 SELECT NAME,population FROM city; DESC city1; SELECT * FROM city1;3.复制表结构:
CREATE TABLE stu LIKE student;4.列和数据一起复制:
CREATE TABLE city1 SELECT NAME,population FROM city;
4.常见SQL操作
1.修改表名为student
ALTER TABLE stu RENAME student;
DESC student
2.在表中加入telnum列
ALTER TABLE student ADD telnum CHAR(11) NOT NULL UNIQUE;
3.在name列后加入cardid身份证号
ALTER TABLE student ADD cardid CHAR(18) NOT NULL UNIQUE AFTER NAME;
4.在表的首列添加 stuid
ALTER TABLE student ADD stuid CHAR(10) NOT NULL UNIQUE FIRST;
5.将表中的stuid列删除
ALTER TABLE student DROP stuid;
DESC student
6.将telnum列的数据类型修改为char(15)
modify命令只可以修改属性,不能修改列名字
ALTER TABLE student MODIFY telnum CHAR(15);
7.将telnum名字改为tnum,数据类型改为char(11)
change 命令可以改列名字,也可以修改属性。
ALTER TABLE student CHANGE telnum tnum CHAR(11);