📄 dbinfo.pas
字号:
C_PRJ_NAME VARCHAR(32) not null,
I_PRJ_TYPE INT not null,
I_PRJ_STATUS CHAR(1) not null,
/*C_MODI_USER VARCHAR(32) null,
D_MODI_DATE DATETIME null,*/
D_CRT_DATE DATETIME not null default (Getdate()),
C_CRT_USER VARCHAR(32) not null,
primary key (C_PRJ_ID),
foreign key (C_GRP_ID) references CSI_SECU_GRP (C_GRP_ID),
foreign key (I_PRJ_TYPE) references CSI_PRJ_TYPES (I_PRJ_TYPE)
/*
Project Type:
'C'-CRM; 'E'-E-Commerce; 'I'-System Integration; 'R'-ERP; ' '-Others;
C_PRJ_STATUS
I_PRJ_STATUS
0-Unknow 1-Preparing; 2-Initializing; 3-Analysis; 4-Designing; 5-Coding; 6-Testing;
7-Deploying; 9-Completed
*/
)
go
/*==============================================================*/
/* Table : CSI_ROLE_TYPES */
/*==============================================================*/
create table CSI_ROLE_TYPES (
I_ROLE_TYPE INT not null,
C_DESCRIPTION VARCHAR(128) not null,
/*C_MODI_USER VARCHAR(32) null,
D_MODI_DATE DATETIME null,*/
C_CRT_USER VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
primary key (I_ROLE_TYPE)
)
go
/*==============================================================*/
/* Table : CSI_ROLES */
/*==============================================================*/
create table CSI_ROLES (
C_ROLE_ID VARCHAR(32) not null,
C_ROLE_TYPE INT NULL,
C_ROLE_NAME VARCHAR(32) not null,
C_ROLE_DESCRIPTIOIN VARCHAR(64) null,
C_PRJ_ID VARCHAR(32) not null,
/*C_MODI_USER VARCHAR(32) null,
D_MODI_DATE DATETIME null,*/
C_CRT_USER VARCHAR(32) null,
D_CRT_DATE DATETIME not null default (Getdate()),
primary key (C_ROLE_ID),
foreign key (C_PRJ_ID) references CSI_PROJECTS (C_PRJ_ID)
/*FOREIGN KEY (C_ROLE_TYPE) REFERENCES CSI_ROLE_TYPES(C_ROLE_TYPE)*/
)
go
/*=============================================================*/
/* Table : CSI_DOCUMENTS */
/*==============================================================*/
create table CSI_DOCUMENTS (
C_DOC_ID VARCHAR(32) not null,
C_DOC_NAME VARCHAR(128) not null,
/*C_DOC_NAME = C_PRJ_NAME + C_ROLE_NAME+ USER DEFINED*/
C_DOC_VER VARCHAR(32) NOT NULL,
I_DOC_TYPE INT not null,
C_ROLE_ID VARCHAR(32) not null,
C_PRJ_ID VARCHAR(32) null,
C_DOC_REF_ID VARCHAR(32) NULL,
C_DOC_STUS CHAR(1) null,
/*P-PENDING M-MASTER*/
C_DOC_ORGIN VARCHAR(32) null,
C_DOC_SUBJECT VARCHAR(64) null,
C_DOC_ABSTR VARCHAR(255) null,
C_REVIEW_BY VARCHAR(32) null,
D_PUBL_BY VARCHAR(32) null,
D_PUBL_DATE DATETIME null,
C_DOC_KEYWD VARCHAR(32) null,
C_DOC_MEMO TEXT null,
C_MODI_USER VARCHAR(32) null,
D_MODI_DATE DATETIME null,
C_CRT_USER VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
/*Status : P - Pending, A- Active*/
primary key (C_DOC_ID),
foreign key (I_DOC_TYPE) references CSI_DOCUMENT_TYPES (I_DOC_TYPE),
foreign key (C_ROLE_ID) references CSI_ROLES(C_ROLE_ID),
foreign key (C_PRJ_ID) references CSI_PROJECTS (C_PRJ_ID),
FOREIGN KEY (C_DOC_REF_ID) REFERENCES CSI_DOC_REF (C_DOC_REF_ID)
)
go
/*==============================================================*/
/* Table : CSI_FILES */
/*==============================================================*/
create table CSI_FILES (
C_DOC_ID VARCHAR(32) not null,
C_EXT VARCHAR(4) null,
I_PAGE INT NULL,
F_FILE IMAGE null,
C_STATUS CHAR(1) NULL,
primary key (C_DOC_ID),
foreign key (C_DOC_ID) REFERENCES CSI_DOCUMENTS (C_DOC_ID)
/*C_STATUS D- DELETE O-OLD L-LATEST */
)
go
/*==============================================================*/
/* Table : CSI_SECURITY */
/*==============================================================*/
create table CSI_SECURITY (
I_MIN_PWORD_LEN INT not null,
I_MIN_PWORD_NUM INT not null,
I_MIN_PWORD_PUNC INT not null,
I_MAX_CONSECUTIVE INT not null
)
go
/*==============================================================*/
/* Table : CSI_SECU_USER */
/*==============================================================*/ create table CSI_SECU_USER (
C_USER_ID VARCHAR(32) not null,
C_USER_NAME VARCHAR(32) not null,
C_USER_DESC VARCHAR(128) null,
C_USER_PWD VARCHAR(32) not null default (''''),
C_USER_EMAIL VARCHAR(64) NULL,
C_CRT_USER VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
D_LAST_LOGIN DATETIME null,
D_PASSWORD_DATE DATETIME null,
D_EXPIRED_DATE DATETIME null,
C_RIGHTS CHAR(1) not null,
C_USER_STATUS CHAR(1) NOT NULL,
/*C_USER_STATUS D-DESABLED A-ACTIVE C-CREATED P-PEDING*/
/*RIGTHS A-ADMIN M-MANAGE N-NULL B -BOTH*/
primary key (C_USER_ID)
/*foreign key (C_PRJ_ID) REFERENCE CSI_PROJECTS (C_PRJ_ID),
FOREIGN KEY (C_GRP_ID) REFERENCE CSI_SECU_GRP (C_GRP_ID),
FOREIGN KEY (C_ROLE_ID) REFERENCE CSI_ROLES (C_ROLE_ID)*/
)
go
/*==============================================================*/
/* Table : CSI_SECU_USER_GRP */
/*==============================================================*/
create table CSI_SECU_USER_GRP (
C_GRP_ID VARCHAR(32) not null,
C_USER_ID VARCHAR(32) not null,
C_CRT_USER VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
primary key (C_GRP_ID,C_USER_ID),
FOREIGN KEY (C_GRP_ID) REFERENCES CSI_SECU_GRP (C_GRP_ID) ,
FOREIGN KEY (C_USER_ID) REFERENCES CSI_SECU_USER (C_USER_ID)
)
go
/*==============================================================*/
/* Table : CSI_SECU_USER_PRJ */
/*==============================================================*/
create table CSI_SECU_USER_PRJ (
C_PRJ_ID VARCHAR(32) not null,
C_USER_ID VARCHAR(32) not null,
C_CRT_USER VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
primary key (C_PRJ_ID,C_USER_ID),
FOREIGN KEY (C_PRJ_ID) REFERENCES CSI_PROJECTS (C_PRJ_ID) ,
FOREIGN KEY (C_USER_ID) REFERENCES CSI_SECU_USER (C_USER_ID)
)
go
/*==============================================================*/
/* Table : CSI_SECU_USER_ROLE */
/*==============================================================*/
create table CSI_SECU_USER_ROLE (
C_USER_ID VARCHAR(32) not null,
C_ROLE_ID VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
primary key (C_ROLE_ID, C_USER_ID),
FOREIGN KEY (C_ROLE_ID) REFERENCES CSI_ROLES (C_ROLE_ID) ,
FOREIGN KEY (C_USER_ID) REFERENCES CSI_SECU_USER (C_USER_ID)
)
go
/*==============================================================*/
/* Table : CSI_SECU_GRP_PRJ */
/*==============================================================*/
create table CSI_SECU_GRP_PRJ (
C_GRP_ID VARCHAR(32) not null,
C_PRJ_ID VARCHAR(32) not null,
C_CRT_USER VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
primary key (C_GRP_ID,C_PRJ_ID),
FOREIGN KEY (C_PRJ_ID) REFERENCES CSI_PROJECTS (C_PRJ_ID)
/*C_GRP_TYPE 0- UNKNOWN 1- CORPRATION 2 - PROJECT 3 -ROLE*/
)
go
/*==============================================================*/
/* Table : CSI_TEMPLATES */
/*==============================================================*/
create table CSI_TEMPLATES (
C_TEMP_ID VARCHAR(32 NOT null,
C_DOC_NAME VARCHAR(64) not null,
C_DOC_VER VARCHAR(32) NOT NULL,
I_DOC_TYPE INT not null,
C_ROLE_ID VARCHAR(32) NOT null,
C_PRJ_ID VARCHAR(32) null,
/*C_MODI_USER VARCHAR(32) null,
D_MODI_DATE DATETIME null,*/
C_DOC_REF_ID VARCHAR(32) null,
C_DOC_STUS CHAR(1) null,
C_DOC_ORGIN VARCHAR(32) null,
C_DOC_SUBJECT VARCHAR(64) null,
C_DOC_ABSTR VARCHAR(255) null,
C_REVIEW_BY VARCHAR(32) null,
D_PUBL_BY VARCHAR(32) null,
D_PUBL_DATE DATETIME null,
C_DOC_KEYWD VARCHAR(32) null,
C_DOC_MEMO TEXT null,
C_FILENAME VARCHAR(32) null,
C_EXT VARCHAR(10) null,
C_CRT_USER VARCHAR(32) not null,
D_CRT_DATE DATETIME not null default (Getdate()),
PRIMARY KEY (C_TEMP_ID),
foreign key (I_DOC_TYPE) references CSI_DOCUMENT_TYPES (I_DOC_TYPE),
foreign key (C_ROLE_ID) references CSI_ROLES(C_ROLE_ID),
foreign key (C_PRJ_ID) references CSI_PROJECTS (C_PRJ_ID),
FOREIGN KEY (C_DOC_REF_ID) REFERENCES CSI_DOC_REF (C_DOC_REF_ID)
)
go
/* --- INDEXES --- */
create index CSI_I_DOCS on CSI_DOCUMENTS(C_DOC_ID)
go
create index CSI_I_FILES on CSI_FILES(C_DOC_ID)
go
INSERT INTO CSI_SECU_GRP VALUES('0','0','System','System group','S','system',getdate())
/*INSERT INTO CSI_SECU_USER VALUES('0','system','system user ','','','system',getdate(),null,null,null,'B','A')*/
INSERT INTO CSI_SECU_USER VALUES('1','Admin','system administrator','','','system',getdate(),null,null,null,'A','A')
INSERT INTO CSI_SECU_USER VALUES('2','Manager','system manager','','','system',getdate(),null,null,null,'M','A')
/*INSERT INTO CSI_SECU_USER_GRP VALUES('0','0','system',getdate())*/
INSERT INTO CSI_SECU_USER_GRP VALUES('0','1','system',getdate())
INSERT INTO CSI_SECU_USER_GRP VALUES('0','2','system',getdate())
INSERT INTO CSI_POLICYS VALUES('R','Read document','system',getdate())
INSERT INTO CSI_POLICYS VALUES('W','Modify document','system',getdate())
INSERT INTO CSI_POLICYS VALUES('U','Upload document','system',getdate())
go
Function CheckField(tablename,field:string):integer;
{ Protected declarations }
implementation
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -