#创建表 CREATE TABLE IF NOT EXISTS TABLLE_NAME( tutorial_id INT NOT NULL AUTO_INCREMENT, tutorial_title VARCHAR(100) NOT NULL, tutorial_author VARCHAR(40) NOT NULL, submission_date DATE PRIMARY KEY ( tutorial_id )
) #查看数据表 SHOW TABLES FROM `smbms`
#查看表结构 SHOW COLUMNS FROM `smbms_address`
#插入一条记录,如果省略列名和字段名,所有的值都赋值 INSERT INTO (col_name,....)VALUES(val,....);
#修改数据表(添加单字段) ALTER TABLE tab_name ADD [COLUMN] col_name column_definition [FIRST|AFTER col_name] #修改表示例(添加单字段) ALTER TABLE smbms_bill ADD userName INT(2) DEFAULT 22 NOT NULL AFTER productName;
#修改表添加多列字段 ALTER TABLE tab_name ADD [COLUMN] (col_name column_definition,.....) ALTER TABLE smbms_bill ADD(person VARCHAR (10) DEFAULT 24,address VARCHAR (25));
#删除表字段 ALTER TABLE tab_name DROP [COLUMN] col_name ALTER TABLE smbms_bill DROP age;
#同时删除多列 ALTER TABLE smbms_bill DROP address,DROP userName;
#删除一列的同时在新增一列 ALTER TABLE smbms_bill DROP userName,ADD age INT(2) NOT NULL DEFAULT 22;
#添加主键约束 ALTER TABLE tab_name ADD [CONSTRAINT[symbol]] PRIMARY KEY [index_type](index_col_name); ALTER TABLE t_user ADD CONSTRAINT PK_t_user_uid PRIMARY KEY(uid);
#添加唯一约束 ALTER TABLE tab_name ADD [CONSTRAINT[symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type](index_col_name); ALTER TABLE t_user ADD UNIQUE (user_name);#user_name 要加括号
#添加外键约束 ALTER TABLE tab_name ADD [CONSTRAINT[symbol]] FOREIGN KEY [index_name](index_col_name,...) reference_definition #外键添加要求(相同的数据类型与长度,varchar除外,引擎是innoDB,字段上要有索引) ALTER TABLE t_user2 ADD FOREIGN KEY (pid) REFERENCES t_user (uid);
#添加/删除默认约束 ALTER TABLE tal_name ALTER [COLUMN] col_name {SET DEFAULT literal|DROP DEFAULT} #添加默认约束 ALTER TABLE t_user ALTER user_name SET DEFAULT 'zhangsan'; #删除默认约束 ALTER TABLE t_user ALTER user_name DROP DEFAULT;
#删除主键约束(因为主键约束只有一个所以不用写字段名) ALTER TABLE tal_name DROP PRIMARY KEY ALTER TABLE t_user2 DROP PRIMARY KEY;
#删除唯一约束 ALTER TABLE tab_name DROP {INDEX|KEY}index_name #首先应查看数据表的唯一约束名字 SHOW INDEX FROM t_user #删除唯一约束 ALTER TABLE t_user DROP INDEX user_name;
#删除外键约束 ALTER TABLE tal_name DROP FOREIGN KEY fk_symbol #查看外键约束获取外键的名字,这里是(`t_user2_ibfk_1`) SHOW CREATE TABLE t_user2 #删除外键 ALTER TABLE t_user2 DROP FOREIGN KEY `t_user2_ibfk_1`;
#修改列定义(修改字段类型|名称|位置) ALTER TABLE tal_name MODIFY [COLUMN] col_name column_definition [FIRST|AFTER col_name] #将user_name移到第一位(如果user_name有默认值要写默认值,如果不为空,要写not null) ALTER TABLE t_user MODIFY user_name VARCHAR(10) FIRST; #将uid修改成TINYINT类型(在修改型的时候如果从大类型修改到小类型,有可能造成数据的丢失) ALTER TABLE t_user MODIFY uid TINYINT (2); #将uid修改列名称为u_id,类型修改为int ALTER TABLE t_user CHANGE uid u_id INT(2); #修改表字段 alter table `t_user2` change user_name uid int(4) not null,change address int(4) not null;
#数据表更名 #方法一: ALTER TABLE tal_name RENAME[TO|AS] new_tbl_name #方法二: RENAME TABLE tbl_name TO new_tbl_name[tbl_name2 TO new_tbl_name2].... #将t_user修改成t_user3 ALTER TABLE t_user RENAME TO t_user3 #将t_user3修改成t_user RENAME TABLE t_user3 TO t_user |