Files
zyt/MANUAL_INSTALL_SQL.md
T
2026-03-23 18:02:16 +08:00

102 lines
3.4 KiB
Markdown

# 处方管理功能 - 手动安装SQL
如果自动安装脚本无法运行,可以手动在数据库中执行以下SQL语句。
## 方法1:使用安装脚本(推荐)
### Windows系统:
```bash
install_prescription_shared.bat
```
### Linux/Mac系统:
```bash
chmod +x install_prescription_shared.sh
./install_prescription_shared.sh
```
## 方法2:手动执行SQL
打开你的数据库管理工具(如 phpMyAdmin、Navicat、MySQL Workbench等),选择数据库 `zyt`,然后执行以下SQL语句:
```sql
-- 处方增加共享字段
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `is_shared` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否共享:0-不共享(仅自己可见) 1-共享(所有人可见)' AFTER `template_id`;
-- 处方名称
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `prescription_name` varchar(100) NOT NULL DEFAULT '' COMMENT '处方名称' AFTER `sn`;
-- 处方类型
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `prescription_type` varchar(50) NOT NULL DEFAULT '浓缩水丸' COMMENT '处方类型:浓缩水丸、饮片、颗粒、丸剂、散剂等' AFTER `prescription_name`;
-- 舌象图片
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `tongue_image` varchar(255) NOT NULL DEFAULT '' COMMENT '舌象图片' AFTER `tongue`;
-- 脉象详情
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `pulse_condition` varchar(100) NOT NULL DEFAULT '' COMMENT '脉象详情' AFTER `pulse`;
-- 服用天数
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `usage_days` int(11) NOT NULL DEFAULT 7 COMMENT '服用天数' AFTER `dose_unit`;
-- 服用时间
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `usage_time` varchar(50) NOT NULL DEFAULT '饭前' COMMENT '服用时间:饭前、饭后、饭中、空腹、睡前、晨起、随时' AFTER `usage_days`;
-- 服用方式
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `usage_way` varchar(50) NOT NULL DEFAULT '温水送服' COMMENT '服用方式:温水送服、开水冲服、黄酒送服等' AFTER `usage_time`;
-- 忌口
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `dietary_taboo` varchar(200) NOT NULL DEFAULT '' COMMENT '忌口(逗号分隔):辛辣食物、生冷食物、油腻食物等' AFTER `usage_way`;
-- 其他服用说明
ALTER TABLE `zyt_tcm_prescription` ADD COLUMN `usage_notes` varchar(200) NOT NULL DEFAULT '' COMMENT '其他服用说明' AFTER `dietary_taboo`;
```
## 方法3:使用命令行
```bash
# 进入项目根目录
cd /path/to/your/project
# 执行SQL文件
mysql -h127.0.0.1 -P3306 -uroot -proot zyt < server/database/migrations/add_shared_to_prescription.sql
```
## 验证安装
执行以下SQL查询,检查字段是否已添加:
```sql
SHOW COLUMNS FROM `zyt_tcm_prescription`;
```
应该能看到以下新增字段:
- prescription_name
- prescription_type
- is_shared
- usage_days
- usage_time
- usage_way
- dietary_taboo
- usage_notes
- tongue_image
- pulse_condition
## 注意事项
1. 如果某个字段已存在,会报错但不影响其他字段的添加
2. 请确保数据库名称为 `zyt`,如果不是请修改SQL中的表名前缀
3. 执行前建议备份数据库
## 常见问题
### 问题1:字段已存在
如果提示"Duplicate column name",说明该字段已经存在,可以忽略该错误。
### 问题2:表不存在
如果提示"Table doesn't exist",请检查:
1. 数据库名称是否正确
2. 表名前缀是否正确(默认是 zyt_)
### 问题3:权限不足
如果提示权限错误,请确保数据库用户有 ALTER TABLE 权限。