create database license; use license; --创建用户 CREATE TABLE lic_USER ( id INT IDENTITY(10,1) PRIMARY KEY, -- 自增主键,从10开始,每次递增1 UNIQUEID VARCHAR(36) NOT NULL UNIQUE, -- 唯一值ID Username VARCHAR(255) NOT NULL DEFAULT '访客', -- 用户名,不能为空且唯一 Account VARCHAR(255) NOT NULL , --账号 PassWord VARCHAR(255) NOT NULL , -- 密码,不能为空 TELEPHONE VARCHAR(20) NOT NULL , -- 电话号码 EMAIL VARCHAR(100) NOT NULL , -- 电子邮件,不能为空且唯一,长度调整为100 Role VARCHAR(20) NOT NULL DEFAULT 'guest', -- 角色,不能为空,默认值为 'user' DelTime DATETIME COMMENT '删除或失效的时间', groupId int COMMENT '组' ); insert into lic_user(uniqueid,username,account,password,telephone,email,role) values('aaf07a1e6eae','admin','admin' ,'$2a$10$Cr9JI/kMnOHM7ocatyNfz.EVt0imnjM.7KNRFaXdVs3E7lr/5Aywm','17381566011','346614231@qq','admin'); --创表用户权限 CREATE TABLE RolePermissions ( ID INT IDENTITY(1,1) PRIMARY KEY, name VARCHAR(24) COMMENT '角色名', permissions VARCHAR COMMENT '权限列表' ); --这个表用于存储上次同步的时间。 CREATE TABLE sync_metadata ( id INTEGER IDENTITY(1,1) PRIMARY KEY, -- 主键ID table_name VARCHAR(255) NOT NULL, -- 表名 last_sync_time TIMESTAMP NOT NULL -- 上次同步的时间 ); -- 初始化插入一条记录 INSERT INTO sync_metadata ( table_name,last_sync_time) VALUES ('target_OA_license', '1970-01-01 00:00:00'); -- 创建目标表 CREATE TABLE target_OA_license ( id INTEGER IDENTITY(1,1) PRIMARY KEY COMMENT '自增主键,从1开始,每次递增1', Unique_ID VARCHAR(36) UNIQUE NOT NULL COMMENT '每行数据的唯一值ID,理论上有oa的REQUESTID就可以了', OA_ID INTEGER COMMENT 'oa 一行的ID', OA_REQUESTID INTEGER COMMENT 'oa里的申请单请求ID', OA_REQUESTNAME VARCHAR(255) COMMENT '请求名称', OA_REQUESTNAMENEW VARCHAR(255) COMMENT '新请求名称', OA_REQUESTNAMEHTMLNEW VARCHAR(255) COMMENT '新请求名称(HTML格式)', OA_GLXMID INTEGER COMMENT 'oa 关联项目ID (formtable_main_146.glxm)', OA_GLXMNAME VARCHAR COMMENT 'oa 关联项目名字 (PRJ_PROJECTINFO.name)', OA_SQSJ VARCHAR COMMENT '申请时间', OA_SALESPERSONNAME VARCHAR(255) COMMENT '销售人员名称', OA_XSJSYX VARCHAR(255) COMMENT '销售邮箱', OA_OPERATIONSPERSONNAME VARCHAR(255) COMMENT '运维人员名称', OA_JFJSYX VARCHAR(255) COMMENT '运维邮箱', OA_SYDW VARCHAR(255) COMMENT '使用单位', OA_XMXXMS TEXT COMMENT '项目详细描述', OA_JDS INTEGER COMMENT '节点数', OA_NODECOUNT INTEGER COMMENT '总节点数', OA_PRODUCTCODE VARCHAR COMMENT '产品编号', OA_PRODUCTNAME VARCHAR COMMENT '产品名称', OA_PRODUCTVERSION VARCHAR COMMENT '产品版本', OA_CPU VARCHAR COMMENT 'CPU 信息', OA_OPERATINGSYSTEM VARCHAR COMMENT '操作系统信息', OA_MAINMAC VARCHAR COMMENT '主 MAC 地址', OA_SECONDMAC VARCHAR COMMENT '副 MAC 地址', OA_CREATIONDATE VARCHAR COMMENT '创建日期', OA_CREATIONTIME VARCHAR COMMENT '创建时间', OA_LASTOPERATEDATE VARCHAR COMMENT '最后操作日期', OA_LASTOPERATETIME VARCHAR COMMENT '最后操作时间', capture_Time DATETIME COMMENT '抓取时间,用于记录数据抓取的时间', del_Time DATETIME COMMENT '该表的行删除时间,非oa表中的删除', LAST_OPERATE_TIME DATETIME COMMENT '该表的行最后操作时间,非oa表中的最后操作时间' ); -- 创建 LicenseGenerateInfo 表 CREATE TABLE License_generate_Info ( ID INT IDENTITY(1,1), OA_ID INTEGER COMMENT 'oa 一行的ID', License_UniqueID VARCHAR(36) COMMENT 'LicenseApplication表的唯一值ID', License_Flage VARCHAR(255) COMMENT 'License分发状态', lic1 VARCHAR COMMENT '主License', lic2 VARCHAR COMMENT '副License', Creator_generate DATETIME COMMENT '生成时间', CONSTRAINT FK_LicenseUniqueID FOREIGN KEY (License_UniqueID) REFERENCES target_OA_license (Unique_ID) ); --创建license分发记录表 CREATE TABLE licenseRecordToUser ( ID INT IDENTITY(1,1) PRIMARY KEY, OA_REQUESTID VARCHAR(36) COMMENT 'oa里的申请单请求ID', License_UniqueID VARCHAR(36) COMMENT '申请单里一条licUid,支撑库里的唯一值ID', user_UNIQUEID VARCHAR(255), User_Account VARCHAR(255), operator_UniqueID VARCHAR(255), up_Time DATETIME, Del_Time DATETIME COMMENT '删除或失效的时间', CONSTRAINT FK_LicenseUniqueID FOREIGN KEY (License_UniqueID) REFERENCES target_OA_license (Unique_ID) ); --创建license分发记录表 CREATE TABLE licenseRecordToEmails ( ID INT IDENTITY(1,1) PRIMARY KEY, OA_REQUESTID INTEGER COMMENT 'oa里的申请单请求ID', License_UniqueID VARCHAR(36), emails VARCHAR(255), operator_UniqueID VARCHAR(255), up_Time DATETIME, Del_Time DATETIME COMMENT '删除或失效的时间', CONSTRAINT FK_LicenseUniqueID FOREIGN KEY (License_UniqueID) REFERENCES target_OA_license (Unique_ID) );