online-php-practice/db.sql
2019-06-30 21:18:31 +08:00

91 lines
4.5 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- 开饭平台用户信息:
-- openid 普通用户的标识,对当前开发者帐号唯一
-- nickname 普通用户昵称
-- sex 普通用户性别1为男性2为女性
-- province 普通用户个人资料填写的省份
-- city 普通用户个人资料填写的城市
-- country 国家如中国为CN
-- headimgurl 用户头像最后一个数值代表正方形头像大小有0、46、64、96、132数值可选0代表640*640正方形头像用户没有头像时该项为空
-- privilege 用户特权信息json数组如微信沃卡用户为chinaunicom
-- unionid 用户统一标识。针对一个微信开放平台帐号下的应用同一用户的unionid是唯一的。
-- 开放平台用户
CREATE TABLE `userinfo`(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`openid` VARCHAR(64) NULL DEFAULT '' COMMENT '微信openid',
`nickname` VARCHAR(128) NULL COMMENT '用户昵称',
`realname` VARCHAR(20) NULL COMMENT '真实姓名',
`sex` TINYINT(1) NULL COMMENT '用户性别1男性2女性',
`language` VARCHAR(16) NULL COMMENT '语言',
`province` VARCHAR(16) NULL COMMENT '用户个人资料填写的省份',
`city` VARCHAR(16) NULL COMMENT '普通用户个人资料填写的城市',
`country` VARCHAR(32) NULL COMMENT '国家如中国为CN',
`headimgurl` VARCHAR(256) NULL COMMENT '用户头像',
`privilege` TEXT NULL COMMENT '用户特权信息json 数组',
`unionid` VARCHAR(128) NULL COMMENT '微信开放平台用户唯一标识',
`admin` TINYINT(1) NULL DEFAULT 0 COMMENT '是否是管理员1是0不是',
`credit` VARCHAR(128) NULL COMMENT '积分',
`created_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY(`id`)
);
-- 题目
CREATE TABLE `problemset`(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`no` BIGINT UNSIGNED NOT NULL,
`type` VARCHAR(12) NULL COMMENT '分类',
`name` VARCHAR(128) NULL COMMENT '题名',
`isAnswer` VARCHAR(12) NULL COMMENT '是否有解答1有其余无',
`language` VARCHAR(16) NULL COMMENT '编程语言',
`passPercent` VARCHAR(16) NULL COMMENT '通过率',
`difficulty` VARCHAR(16) NULL COMMENT '难度',
`tag` VARCHAR(255) NULL COMMENT '标签',
`mark` VARCHAR(256) NULL COMMENT '备注',
`describe` LONGTEXT NULL COMMENT '题目描述',
`answer` LONGTEXT NULL COMMENT '解答',
`phpCode` LONGTEXT NULL COMMENT 'PHP代码',
`javascriptCode` LONGTEXT NULL COMMENT 'Javascript代码',
`phpUnitCode` LONGTEXT NULL COMMENT 'PHP测试代码',
`testCase` LONGTEXT NULL COMMENT '测试用例',
`expectedResult` LONGTEXT NULL COMMENT '预期结果',
`credit` DECIMAL(8, 2) NULL COMMENT '积分',
`isCredit` VARCHAR(5) NULL DEFAULT '0' COMMENT '是否积分1是0不是',
`created_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY(`id`)
);
-- 做题记录
CREATE TABLE `record`(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`user_id` BIGINT UNSIGNED NOT NULL,
`problemset_id` BIGINT UNSIGNED NOT NULL,
`type` VARCHAR(12) NULL COMMENT '分类',
`code` LONGTEXT NULL COMMENT '代码',
`is_pass` VARCHAR(5) NULL DEFAULT '0' COMMENT '是否通过测试1是0不是',
`created_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`updated_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
PRIMARY KEY(`id`)
);
-- -- 在线测试的记录
-- CREATE TABLE `test_record`(
-- `user_id` BIGINT UNSIGNED NOT NULL,
-- `code` LONGTEXT NULL COMMENT '代码',
-- `created_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
-- `updated_time` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
-- PRIMARY KEY(`user_id`)
-- );
-- 积分变动(流水)
CREATE TABLE `credit_flow`(
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`user_id` BIGINT UNSIGNED NOT NULL,
`problemset_id` BIGINT UNSIGNED NOT NULL,
`log` VARCHAR(256) NULL COMMENT '事由',
`income` DECIMAL(8) NOT NULL COMMENT '动账',
`credit` DECIMAL(8) NOT NULL COMMENT '当时总积分',
`create_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
PRIMARY KEY(`id`)
);