Files
GUI/database/Readme.md

95 lines
2.7 KiB
Markdown
Raw Normal View History

2023-08-11 17:44:34 +08:00
## USCI GUI DataBase Readme
2023-11-13 15:53:57 +08:00
### start mariadb on OpenSuse 15.3
```shell
# 设置数据库服务自启动并,启用数据库
sudo systemctl enable mariadb
sudo systemctl start mariadb
# 使用root账户登录数据库
sudo mysql -u root
```
然后执行一下sql代码创建数据库USCT
```Sql
-- 创建用户
CREATE USER 'rc'@'localhost' IDENTIFIED BY 'password';
-- 修改密码
SET PASSWORD FOR 'rc'@'localhost' = PASSWORD('123$%^');
-- 查看所有user看是否创建成功
select user,host from mysql.user;
-- 创建数据库USCT
create database USCT;
```
然后执行以下Table DDL相关的sql创建表格并插入数据.
2023-08-11 17:44:34 +08:00
### Table DDL
```Sql
2023-11-13 15:53:57 +08:00
CREATE TABLE `Role` (
`RoleID` varchar(200) CHARACTER SET utf8 NOT NULL,
`RoleName` varchar(200) CHARACTER SET utf8 NOT NULL,
`Permissions` varchar(500) CHARACTER SET utf8 DEFAULT NULL,
`Comment` varchar(500) CHARACTER SET utf8 DEFAULT NULL,
PRIMARY KEY (`RoleID`)
);
2023-08-11 17:44:34 +08:00
CREATE TABLE
`Account`(
`UserID` varchar(200) PRIMARY KEY NOT NULL,
`UserCode` varchar(200) NOT NULL,
`UserName` varchar(200) NOT NULL,
`Password` varchar(200) NOT NULL,
2023-11-13 15:53:57 +08:00
`RoleID` varchar(200) NOT NULL,
2023-08-11 17:44:34 +08:00
`Comment` varchar(500)
2023-11-13 15:53:57 +08:00
);
2023-08-11 17:44:34 +08:00
2023-11-13 15:53:57 +08:00
CREATE TABLE `Patient` (
`PatientUID` varchar(255) CHARACTER SET utf8 NOT NULL,
`PatientID` varchar(255) CHARACTER SET utf8 NOT NULL,
`AccessionNumber` varchar(255) DEFAULT NULL,
`PatientName` varchar(255) CHARACTER SET utf8 NOT NULL,
`Birthdate` date NOT NULL,
`Sex` varchar(255) NOT NULL,
`AddDate` date DEFAULT NULL,
`COMMENT` text DEFAULT NULL,
PRIMARY KEY (`PatientUID`)
);
2023-08-11 17:44:34 +08:00
2023-11-13 15:53:57 +08:00
CREATE TABLE `EScan` (
`ScanID` varchar(255) NOT NULL COMMENT 'ScanID same as measurementID, Primary Key',
`ScanDateTime` datetime DEFAULT NULL,
`State` int(11) DEFAULT 0 COMMENT '0 using, -1 expired',
`UpdateTime` datetime DEFAULT NULL COMMENT 'Update Time',
PRIMARY KEY (`ScanID`)
) ;
2023-08-11 17:44:34 +08:00
2023-11-13 15:53:57 +08:00
CREATE TABLE `Scan` (
`ScanID` varchar(255) NOT NULL COMMENT 'ScanID same as measurementID, Primary Key',
`ReferenceID` varchar(255) NOT NULL,
`PatientID` varchar(255) NOT NULL,
`AccessionNumber` varchar(255) DEFAULT NULL,
`ScanDateTime` datetime DEFAULT NULL,
`UpdateTime` datetime DEFAULT NULL,
`PatientName` varchar(255) DEFAULT NULL,
`Laterality` varchar(64) DEFAULT NULL,
`OperatorName` varchar(255) DEFAULT NULL,
`State` int(11) DEFAULT 0,
PRIMARY KEY (`ScanID`)
);
Insert INTO `Role`(RoleID,RoleName,Permissions,Comment) VALUES('0001','admin','NULL','NULL'),('0002','doctor','NULL','NULL');
INSERT INTO `Account`(UserID,UserCode,UserName,Password,RoleID,Comment) VALUES('usct','usct','USCT','e10adc3949ba59abbe56e057f20f883e','0001','NULL');
```
## 授权USCT访问权给rc用户
```Sql
-- 授权
grant all on USCT.* to 'rc'@'localhost';
-- 退出
exit;
```