Files
GUI/database/Readme.md

118 lines
5.1 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
2025-02-19 10:53:42 +08:00
use USCT;
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for Account
-- ----------------------------
DROP TABLE IF EXISTS `Account`;
CREATE TABLE `Account` (
`UserID` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`UserCode` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`UserName` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`Password` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`RoleID` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`Comment` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`UserID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
2023-11-13 15:53:57 +08:00
2025-02-19 10:53:42 +08:00
-- ----------------------------
-- Table structure for EScan
-- ----------------------------
DROP TABLE IF EXISTS `EScan`;
CREATE TABLE `EScan` (
`ScanID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'ScanID same as measurementID, Primary Key',
`ScanDateTime` datetime(0) NULL DEFAULT NULL,
`State` int(11) NULL DEFAULT 0 COMMENT '0 using, -1 expired',
`UpdateTime` datetime(0) NULL DEFAULT NULL COMMENT 'Update Time',
PRIMARY KEY (`ScanID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
2023-08-11 17:44:34 +08:00
2025-02-19 10:53:42 +08:00
-- ----------------------------
-- Table structure for Patient
-- ----------------------------
DROP TABLE IF EXISTS `Patient`;
CREATE TABLE `Patient` (
`PatientUID` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`PatientID` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`PatientName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
2023-11-13 15:53:57 +08:00
`Birthdate` date NOT NULL,
2025-02-19 10:53:42 +08:00
`Sex` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`AddDate` datetime(0) NULL DEFAULT NULL,
`COMMENT` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`PatientUID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
2023-08-11 17:44:34 +08:00
2025-02-19 10:53:42 +08:00
-- ----------------------------
-- Table structure for Role
-- ----------------------------
DROP TABLE IF EXISTS `Role`;
CREATE TABLE `Role` (
`RoleID` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`RoleName` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`Permissions` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
`Comment` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`RoleID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
2023-08-11 17:44:34 +08:00
2025-02-19 10:53:42 +08:00
-- ----------------------------
-- Table structure for Scan
-- ----------------------------
DROP TABLE IF EXISTS `Scan`;
CREATE TABLE `Scan` (
`ScanID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'ScanID same as measurementID, Primary Key',
`ReferenceID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`PatientID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`AccessionNumber` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`ScanDateTime` datetime(0) NULL DEFAULT NULL,
`PatientName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`Laterality` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`OperatorName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`State` int(11) NULL DEFAULT 0,
`StudyUID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`Modality` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`MPPSUID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'MPPS SOP Instance UID',
PRIMARY KEY (`ScanID`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
2023-08-11 17:44:34 +08:00
2025-02-19 10:53:42 +08:00
delimiter ;
2023-11-13 15:53:57 +08:00
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;
```