谁能提供一下数据库脚本啊
我编写的数据库脚本运行不了,谁能提供一下啊
我编写的数据库脚本运行不了,谁能提供一下啊
2016-05-06
--数据库初始化脚本
--创建数据库
CREATE DATABASE seckill
use seckill
--创建秒杀库存表
CREATE TABLE seckill(
seckill_id bigint NOT NULL AUTO_INCREMENT COMMENT '商品库存id',
name varchar(120) NOT NULL COMMENT '商品名称',
number int NOT NULL COMMENT '库存数量',
start_time timestamp NOT NULL COMMENT '秒杀开始时间',
end_time timestamp NOT NULL COMMENT '秒杀结束时间',
create_time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY (seckill_id),
key idx_start_time(start_time),
key idx_end_time(end_time),
key idx_create_time(create_time)
)ENGINE=InnoDB AUTO_INCREMENT=1000 DEFAULT CHARSET=utf8 COMMENT='秒杀库存表'
--初始化数据
insert into
seckill (name , number , start_time , end_time)
VALUES
('100元秒杀ipad' , 100 , '2015-11-01 00:00:00' , '2015-11-02 00:00:00'),
('200元秒杀小米5' , 100 , '2015-11-01 00:00:00' , '2015-11-02 00:00:00'),
('300元秒杀iphone6s' , 100 , '2015-11-01 00:00:00' , '2015-11-02 00:00:00');
--秒杀成功明细
--用户登录认证信息
create table success_seckilled(
seckill_id bigint NOT NULL COMMENT '商品库存id',
phone varchar(11) NOT NULL COMMENT '用户电话',
state tinyint NOT NULL DEFAULT 0 COMMENT '状态标识:-1:无效 0:成功 1:已付款 2:已发货',
create_time TIMESTAMP NOT NULL COMMENT '创建时间',
PRIMARY KEY (seckill_id , phone) , /*联合主键*/
key idx_create_time(create_time)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='秒杀成功明细'
CREATE TABLE seckill(
seckill_id bigint NOT NULL AUTO_INCREMENT COMMENT '商品库存id',
`name` varchar(120) NOT NULL COMMENT '商品名称',
`number` int NOT NULL COMMENT '库存数量',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`start_time` timestamp NOT NULL COMMENT '秒杀开始时间',
`end_time` timestamp NOT NULL COMMENT '秒杀结束时间',
PRIMARY KEY (seckill_id),
key idx_start_time(start_time),
key idx_end_time(end_time),
key idx_create_time(create_time)
)ENGINE=InnoDB AUTO_INCREMENT=1000 DEFAULT CHARSET=utf8 COMMENT='秒杀库存表';
单表多timestamp报错#1293 - Incorrect table definition; there can be only one TIMESTAMP column with C解决 一个表中出现多个timestamp并设置其中一个为current_timestamp的时候经常会遇到 #1293 - Incorrect table definition; there can be only oneTIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATEclause www.2cto.com 原因是当你给一个timestamp设置为on updatecurrent_timestamp的时候,其他的timestamp字段需要显式设定default值 但是如果你有两个timestamp字段,但是只把第一个设定为current_timestamp而第二个没有设定默认值,mysql也能成功建表,但是反过来就不行...
举报