forked from yoone/API
49 lines
1.2 KiB
Markdown
49 lines
1.2 KiB
Markdown
# 数据库迁移指南
|
|
|
|
为了支持区域坐标功能,需要执行数据库迁移操作,将新增的 `latitude` 和 `longitude` 字段添加到数据库表中.
|
|
|
|
## 执行迁移步骤
|
|
|
|
### 1. 生成迁移文件
|
|
|
|
运行以下命令生成迁移文件:
|
|
|
|
```bash
|
|
npm run migration:generate -- ./src/db/migrations/AddCoordinatesToArea
|
|
```
|
|
|
|
### 2. 检查迁移文件
|
|
|
|
生成的迁移文件会自动包含添加 `latitude` 和 `longitude` 字段的SQL语句.您可以检查文件内容确保迁移逻辑正确.
|
|
|
|
### 3. 执行迁移
|
|
|
|
运行以下命令执行迁移,将更改应用到数据库:
|
|
|
|
```bash
|
|
npm run migration:run
|
|
```
|
|
|
|
## 手动迁移SQL(可选)
|
|
|
|
如果需要手动执行SQL,可以使用以下语句:
|
|
|
|
```sql
|
|
ALTER TABLE `area`
|
|
ADD COLUMN `latitude` DECIMAL(10,6) NULL AFTER `name`,
|
|
ADD COLUMN `longitude` DECIMAL(10,6) NULL AFTER `latitude`;
|
|
```
|
|
|
|
## 回滚迁移(如需)
|
|
|
|
如果遇到问题,可以使用以下命令回滚迁移:
|
|
|
|
```bash
|
|
npm run typeorm -- migration:revert -d src/db/datasource.ts
|
|
```
|
|
|
|
## 注意事项
|
|
|
|
- 确保在执行迁移前备份数据库
|
|
- 迁移不会影响现有数据,新增字段默认为 NULL
|
|
- 迁移后,可以通过API开始为区域添加坐标信息 |