You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ocr/runstart/doc/sql/abase_create.sql

272 lines
9.2 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

drop table if exists S_AREA_T;
drop index INDEX_CITY_PARENT on S_CITY_T;
drop table if exists S_CITY_T;
drop table if exists S_COMMONTWORD_T;
drop table if exists S_FTPERROR_T;
drop index INDEX_NATION on S_NATION_T;
drop table if exists S_NATION_T;
drop index INDEX_PROVINCE_NAME on S_PROVINCE_T;
drop table if exists S_PROVINCE_T;
drop index INDEX_REGION_PARENT on S_REGION_T;
drop table if exists S_REGION_T;
drop table if exists S_TOWN_T;
drop table if exists S_SEQMANAGE_T;
/*==============================================================*/
/* Table: S_SEQMANAGE_T */
/*==============================================================*/
create table S_SEQMANAGE_T
(
SEQ_NAME varchar(50) not null comment '编号关键字,不能重复',
CURRENT_VALUE int not null comment '当前使用的序号',
INCREMENT int not null default 1 comment '步长,每次序号增加的值',
YEAR int(4) not null comment '年份',
primary key (SEQ_NAME)
);
/*==============================================================*/
/* Table: S_AREA_T */
/*==============================================================*/
create table S_AREA_T
(
AREAID bigint(20) not null comment '辖区流水号',
CITYID bigint(20) comment '城市流水号',
AREA varchar(100) comment '区县名称',
LAT varchar(20) comment '地理纬度',
LNG varchar(20) comment '地理经度',
PICON varchar(190) comment '个性化图标',
SUMCOUNT int comment '统计数量',
primary key (AREAID)
);
/*==============================================================*/
/* Table: S_CITY_T */
/*==============================================================*/
create table S_CITY_T
(
CITYID bigint(20) not null comment '城市流水号',
FATHER bigint(20) comment '对应的省份ID',
CITY varchar(100) comment '城市名称',
LAT varchar(20) comment '地理纬度',
LNG varchar(20) comment '地理经度',
PICON varchar(190) comment '个性化图标',
SUMCOUNT int comment '统计数量',
primary key (CITYID)
);
/*==============================================================*/
/* Index: INDEX_CITY_PARENT */
/*==============================================================*/
create index INDEX_CITY_PARENT on S_CITY_T
(
FATHER
);
/*==============================================================*/
/* Table: S_COMMONTWORD_T */
/*==============================================================*/
create table S_COMMONTWORD_T
(
ID bigint(20) not null comment '主键',
WORD varchar(190) comment '敏感词',
primary key (ID)
);
/*==============================================================*/
/* Table: S_FTPERROR_T */
/*==============================================================*/
create table S_FTPERROR_T
(
ID varchar(32) not null comment '流水号',
IP varchar(190) comment '失败的服务器地址',
PORT varchar(20) comment '失败服务器端口',
FILEPATH varchar(190) comment '失败文件的物理路径',
FTPFILEPATH varchar(190) comment 'ftp服务保存地址相对路径',
FTPFILENAME varchar(100) comment '上传到ftp的文件名',
CREATEDATE bigint(15) comment '创建时间',
primary key (ID)
);
/*==============================================================*/
/* Table: S_NATION_T */
/*==============================================================*/
create table S_NATION_T
(
ID bigint(30) not null comment '民族流水号',
NATION varchar(150) comment '民族名称',
primary key (ID)
);
/*==============================================================*/
/* Index: INDEX_NATION */
/*==============================================================*/
create index INDEX_NATION on S_NATION_T
(
NATION
);
/*==============================================================*/
/* Table: S_PROVINCE_T */
/*==============================================================*/
create table S_PROVINCE_T
(
PROVINCEID bigint(20) not null comment '省份流水号',
PROVINCE varchar(100) comment '省份名称',
LAT varchar(20) comment '地理纬度',
LNG varchar(20) comment '地理经度',
PICON varchar(190) comment '个性化图标',
SUMCOUNT int comment '统计数量',
primary key (PROVINCEID)
);
/*==============================================================*/
/* Index: INDEX_PROVINCE_NAME */
/*==============================================================*/
create index INDEX_PROVINCE_NAME on S_PROVINCE_T
(
PROVINCE
);
/*==============================================================*/
/* Table: S_REGION_T */
/*==============================================================*/
create table S_REGION_T
(
REGIONID bigint(20) not null comment '流水号',
FATHER bigint(20) comment '父级信息主键',
REGION varchar(100) comment '区域名称',
LAT varchar(20) comment '地理纬度',
LNG varchar(20) comment '地理经度',
PICON varchar(190) comment '个性化图标',
SUMCOUNT int comment '统计数量',
primary key (REGIONID)
);
/*==============================================================*/
/* Index: INDEX_REGION_PARENT */
/*==============================================================*/
create index INDEX_REGION_PARENT on S_REGION_T
(
FATHER
);
/*==============================================================*/
/* Table: S_TOWN_T */
/*==============================================================*/
create table S_TOWN_T
(
TOWNID bigint(20) not null comment '流水号',
AREAID bigint(20) comment '辖区流水号',
TOWN varchar(100) comment '名称',
LAT varchar(20) comment '地理纬度',
LNG varchar(20) comment '地理经度',
PICON varchar(190) comment '个性化图标',
SUMCOUNT int comment '统计数量',
primary key (TOWNID)
);
/*==============================================================*/
/* 取当前值 对应表S_SEQMANAGE_T */
/*==============================================================*/
DROP FUNCTION IF EXISTS currval;
DELIMITER $
CREATE FUNCTION currval (name VARCHAR(50))
RETURNS INTEGER
LANGUAGE SQL
DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
DECLARE value INTEGER;
SET value = 0;
SELECT current_value INTO value
FROM S_SEQMANAGE_T
WHERE seq_name = name;
RETURN value;
END
$
DELIMITER ;
/*==============================================================*/
/* 取下一个值 对应表S_SEQMANAGE_T */
/*==============================================================*/
DROP FUNCTION IF EXISTS nextval;
DELIMITER $
CREATE FUNCTION nextval (name VARCHAR(50))
RETURNS INTEGER
LANGUAGE SQL
DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
UPDATE S_SEQMANAGE_T
SET current_value = current_value + increment
WHERE seq_name = name;
RETURN currval(name);
END
$
DELIMITER ;
/*==============================================================*/
/* 取下一个值 按年份每年自动重置value 对应表S_SEQMANAGE_T */
/*==============================================================*/
DROP FUNCTION IF EXISTS nextvalForYear;
DELIMITER $
CREATE FUNCTION nextvalForYear (name VARCHAR(50))
RETURNS INTEGER
LANGUAGE SQL
DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
set @year = (select year from S_SEQMANAGE_T WHERE seq_name = name);
IF YEAR(NOW()) > @year THEN
UPDATE S_SEQMANAGE_T
SET current_value = 1, year = YEAR(NOW())
WHERE seq_name = name;
RETURN currval(name);
ELSE
UPDATE S_SEQMANAGE_T
SET current_value = current_value + increment
WHERE seq_name = name;
RETURN currval(name);
END IF;
END
$
DELIMITER ;
/*==============================================================*/
/* 更新当前值 对应表S_SEQMANAGE_T */
/*==============================================================*/
DROP FUNCTION IF EXISTS setval;
DELIMITER $
CREATE FUNCTION setval (name VARCHAR(50), value INTEGER)
RETURNS INTEGER
LANGUAGE SQL
DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
UPDATE S_SEQMANAGE_T
SET current_value = value
WHERE seq_name = name;
RETURN currval(name);
END
$
DELIMITER ;