mysql建表建索引

时间:2022-10-05 14:36:32

建表:

CREATE TABLE `sj_projects` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL DEFAULT '' COMMENT '项目名称',
`platform_id` int(11) NOT NULL DEFAULT '0' COMMENT '平台id',
`unique_id` varchar(255) NOT NULL DEFAULT '' COMMENT '项目和数据的唯一id',
`repayway` varchar(255) NOT NULL DEFAULT '' COMMENT '还款方式',
`profit` decimal(5,2) NOT NULL DEFAULT '0.00' COMMENT '年化收益',
`speed` decimal(5,2) NOT NULL DEFAULT '0.00' COMMENT '进度',
`frequency` int(11) NOT NULL DEFAULT '0' COMMENT '投资人次',
`amount` decimal(20,2) NOT NULL DEFAULT '0.00' COMMENT '融资金额',
`res_amount` decimal(20,2) NOT NULL DEFAULT '0.00' COMMENT '剩余可投金额',
`invtime` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '项目投资起始时间',
`endtime` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '项目投资结束时间',
`turntime` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '项目还款时间(客户收款时间)',
`term` varchar(50) NOT NULL DEFAULT '' COMMENT '期限',
`type` int(11) NOT NULL DEFAULT '0',
`PageUrl` text COMMENT '注意大小写PageUrl',
`insert_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
`orderby_id` int(11) NOT NULL DEFAULT '1' COMMENT '排序',
`status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态 0为关闭,1为开启',
PRIMARY KEY (`id`),
KEY `unique_id` (`unique_id`) USING BTREE

) ENGINE=InnoDB AUTO_INCREMENT=2383 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='项目表';

如果为唯一索引: UNIQUE KEY `unique_id` (`unique_id`) USING BTREE

也可以直接这样:(唯一索引)    

unique_id  VARCHAR(255) UNIQUE NOT NULL DEFAULT '' COMMENT '项目和数据的唯一id',

 

查询:

show index from sj_projects;  -- 查询sj_projects的所有索引

 SHOW CREATE TABLE sj_projects\G 

 

添加索引:

ALTER TABLE `sj_projects` ADD UNIQUE `unique_id` (`unique_id`);  -- 唯一索引

ALTER TABLE `sj_projects` ADD INDEX `unique_id` (`unique_id`);    -- 普通索引

ALTER TABLE `sj_projects` ADD INDEX `uniqueId` (`unique_id`);    -- 普通索引可以修改名字

 

删除索引:

ALTER TABLE `sj_projects` DROP INDEX `unique_id`;     

 

删除自增id索引:

需要先将id键的自动增长取消:

ALTER TABLE `sj_projects`  MODIFY `id`  int(10) NOT NULL COMMENT 'id';

再次执行: ALTER TABLE `sj_projects` DROP PRIMARY KEY;