MySQL语句总结

发布时间:2020-05-15 18:52:26 | 来源: | 编辑整理:超管


###创建表###
CREATE TABLE `test_user`(
`uid` TINYINT(3) NOT NULL AUTO_INCREMENT COMMENT '用户id',
`uname` VARCHAR(20) NOT NULL DEFAULT '' COMMENT '用户名',
PRIMARY KEY (`uid`),
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT '用户表';

###删除表###
DROP TABLE `test_user`;

ALTER语句:(COLUMN是一个纯粹的噪音且可以省略)
###新增表字段###
ALTER TABLE `test_user`
ADD COLUMN `grade` INT(5) NOT NULL DEFAULT 0 COMMENT '年级ID';

###修改表字段###
ALTER TABLE `test_user`
CHANGE COLUMN `grade` `class_id` INT(5) NOT NULL DEFAULT 0 COMMENT'年级ID';

ALTER TABLE `test_user`
MODIFY COLUMN `class_id` INT(6) NOT NULL DEFAULT 0 COMMENT '班级ID';

###删除表字段###
ALTER TABLE `test_user`
DROP COLUMN `class_id`;

###创建索引###
#普通索引#(INDEX或KEY)
ALTER TABLE `test_user`
ADD INDEX `class_id` (`class_id`);
#唯一索引#(UNIQUE)
#全文索引#(FULLTEXT)
#空间索引#(SPATIAL)

###删除索引###
ALTER TABLE `test_user`
DROP INDEX `class_id`;

###查看表索引###
SHOW INDEX FROM `test_user`;

###重命名表###(RENAME )
从t1到t2:
ALTER TABLE t1 RENAME t2;

###UNSIGNED###
UNSIGNED属性就是将数字类型无符号化。例如,INT的类型范围是-2 147 483 648 ~ 2 147 483 647, INT UNSIGNED的范围类型就是0 ~ 4 294 967 295。

###ALTER语句中MODIFY和CHANGE的区别:
可以使用CHANGE对列进行重命名。重命名时,需给定旧的和新的列名称和列当前的类型。
例如:要把一个列的名称从uids变更到uid,您需要如下操作:
ALTER TABLE test CHANGE uids uid INT(5) NOT NULL DEFAULT 0;
如果您想要更改列的类型而不是名称, CHANGE语法仍然要求旧的和新的列名称,即使旧的和新的列名称是一样的。这个时候可以使用MODIFY来改变列的类型,此时不需要重命名:
ALTER TABLE test MODIFY uids int(11) NOT NULL DEFAULT 0;

###判断如果存在某个表,执行删除###
DROP TABLE IF EXISTS `table_name`;

###补充###
##加索引
mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);
例子: mysql> alter table employee add index emp_name (name);
##加主关键字的索引
mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);
##加唯一限制条件的索引
mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique emp_name2(cardnumber);
##MySQL ALTER语法运用:查看某个表的索引
mysql> show index from 表名;
例子: mysql> show index from employee;
##删除某个索引
mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;
##修改表:增加字段:mysql> ALTER TABLE table_name ADD field_name field_type;
##查看表:mysql> SELECT * FROM table_name;
##修改原字段名称及类型:mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
##删除字段:MySQL ALTER TABLE table_name DROP field_name;