创建数据库:
CREATE DATABASE IF NOT EXISTS tempdb;
SHOW DATABASES;
DROP DATABASE IF EXISTS tempdb;
新建表:
DROP TABLE IF EXISTS `user_info`;
CREATE TABLE `user_info` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`user_name` varchar(40) DEFAULT NULL COMMENT '描述',
`pass` varchar(16) DEFAULT NULL COMMENT '用户密码',
`defa` varchar(16) DEFAULT 'test ' COMMENT '默认值',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
设置主键:
PRIMARY KEY (col1,col2,...)
设置id为自增列:
ALTER TABLE user_info CHANGE COLUMN id id INT(11) NOT NULL AUTO_INCREMENT;
表重命名:
ALTER TABLE user_info RENAME TO userinfo;
列操作
新增列:
ALTER TABLE user_info ADD COLUMN complete DECIMAL(2,1) NULL COMMENT '新增列' after defa;
删除列:
ALTER TABLE user_info DROP COLUMN complete;
修改长度描述(单独修改长度或者描述,会覆盖原来的)
alter table user_info modify column user_name varchar(50) comment '用户名';
修改表备注信息:
alter table user_info modify column defa comment '默认值2';
修改字段长度
alter table user_info modify column user_name varchar(100);
部分类型 | 字符串类型描述--指定值和范围 | cat |
---|---|---|
char | String(0~255) | |
varchar | String(0~255) | |
text | String(0~65536) | |
longtext | String(0~4294967295) | |
int | Integer(-214847668~214847667) | |
bigint | Integer(-9223372036854775808~9223372036854775807) | |
FLOAT | 单精度浮点数 | |
DOUBLE | 双精度浮点数 | |
decimal | 将double转储为字符串形式 | |
date | YYYY-MM-DD | |
datetime | YYYY-MM-DD HH:MM:SS | |
timestamp | YYYYMMDDHHMMSS | |
time | HH:MM:SS | |
enum | 选项值之一 | |
set | 选项值子集 | |
boolean | tinyint(1) |