Skip to main content

用于管理原始 sql 迁移脚本的简单工具。

项目描述

地位

最新稳定

https://travis-ci.org/ts-taiye/raw-sql-migrate.svg?branch=master https://coveralls.io/repos/ts-taiye/raw-sql-migrate/badge.svg?branch=master

开发

https://travis-ci.org/ts-taiye/raw-sql-migrate.svg?branch=develop https://coveralls.io/repos/ts-taiye/raw-sql-migrate/badge.svg?branch=develop

目标

Raw-sql-migrate 是用于管理原始 SQL 迁移的工具。

文档

有关完整文档,请参阅 < http://rsm.readthedocs.org/en/latest/ > 页面。

简短指南

  1. 在项目目录中使用下一个结构创建 rsm.yaml 或 rsm.py:

database:
    engine: engine backend module
    host: database host
    port: database port
    name: database name
    user: user name
    password: user password
history_table_name: migration history table name
RSM_CONFIG = {
    'database': {
        'engine': engine backend module,
        'host': database host,
        'port': database port,
        'name': database name,
        'user': user name,
        'password': user password,
    },
    'history_table_name': migration history table name,
    'packages': [
        'package_a',
        'package_b',
        'package_c.package_d',
    ],
}
  1. 创建第一个迁移

rsm create package_a.package_b initial
  1. 编辑找到 package_a/package_b/migrations/0001_initial.py 的迁移文件。例子:

def forward(database_api):
    database_api.execute(
        '''
        CREATE TABLE test (
           id INT PRIMARY KEY NOT NULL,
           test_value BIGINT NOT NULL,
        );
        CREATE INDEX test_value_index ON test(test_value);
        '''
    )

def backward(database_api):
    database_api.execute('DROP TABLE test;')
  1. 运行迁移:

rsm migrate package_a.package_b
  1. 向后迁移:

rsm migrate package_a.package_b 0

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

raw-sql-migrate-0.3.4.tar.gz (11.4 kB 查看哈希

已上传 source