开源DataBase组件:FluentMigrator

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:

今天将介绍一款开源组件FluentMigrator,其提供了jQuery式链式编程方式,和3.0后的表达式语法使其语义清晰。主要提供我们队数据库结构的维护,版本控制回滚和新增。适用于 敏捷和TDD实践中我们的需求功能的递增,数据结构增加,可持续化集成,应用场景感觉如其名Fluent(流畅)。

一:我们先利用NuGet安装FluentMigrator:

1:在vs在打开Package Manager Console:

image

2:安装FluentMigrator:

image

3:如果你希望控制台提交,可以安装其tools:

image

 

二:下面我面做一个简单的实例订单Order(这里仅列出其部分字段,不会考虑实际业务):

DO:

复制代码
using System; 

namespace FluentMigratorTest 

     public   class  Orders 
    { 
         public  int ID {  getset; } 

         public  string CustomerID {  getset; } 

         public  decimal DisCount {  getset; } 

         public DateTime OrderDate {  getset; } 
    } 
}

 
复制代码

 表结构块:

复制代码
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using FluentMigrator; 

namespace FluentMigratorTest 

    [Migration( 0)] 
     public  class OrderMigration:Migration 
    { 
         public  override  void Up() 
        {                      
            Create.Table( " Orders_test ")                
                .WithColumn( " ID ").AsInt32().Identity().PrimaryKey( " id_pk ").Indexed( " Orders_Pk_ID "
                .WithColumn( " CustomerID ").AsString().ForeignKey( " Customers "" CustomerID ").NotNullable() 
                .WithColumn( " DisCount ").AsDecimal().WithDefaultValue( 0
                .WithColumn( " OrderDate ").AsDateTime().WithDefault(SystemMethods.CurrentDateTime); 
        } 

         public  override  void Down() 
        {   
            Delete.Table( " Orders_test "); 
        } 
    } 
}
复制代码

 

其提供了Up版本递增和Down回滚。语法是不是很流畅?其不仅这些功能还提供了:

 

image

image

 

对表结构的新增,修改,删除,执行sql方法。

利用其提供的tools,更新在数据库

image

支持数据库:

sqlserver2000 sqlserver2005 sqlserver2008 sqlserverce sqlserver mysql postgres oracle sqlite jet

并支持Profile,部署开发和测试不通的数据库。

更多其它信息请参加:https://github.com/schambers/fluentmigrator/wiki


本文转自破狼博客园博客,原文链接:http://www.cnblogs.com/whitewolf/archive/2012/05/27/2520422.html,如需转载请自行联系原作者

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
关系型数据库 数据库 Oracle
|
关系型数据库 数据库 Oracle
|
1月前
|
Oracle 关系型数据库 Linux
服务器Centos7 静默安装Oracle Database 12.2
服务器Centos7 静默安装Oracle Database 12.2
71 0
|
4月前
|
Oracle 关系型数据库 数据库
windows Oracle Database 19c 卸载教程
打开任务管理器 ctrl+Shift+Esc可以快速打开任务管理器,找到oracle所有服务然后停止。 停止数据库服务 在开始卸载之前,确保数据库服务已经停止。你可以使用以下命令停止数据库服务: net stop OracleServiceORCL Universal Installer 卸载Oracle数据库程序 一般情况运行Oracle自带的卸载程序,如使用Universal Installer 工具卸载。 点击开始菜单找到Oracle,然后点击Oracle安装产品,再点击Universal Installer。 点击之后稍等一会然后会进入进入下图界面,点击卸载产品。 选中要删除的Orac
105 1
|
5月前
|
存储 Oracle 关系型数据库
windows 使用 Oracle Database 19c
Oracle数据库是由美国Oracle Corporation(甲骨文公司)开发和提供的一种关系型数据库管理系统,它是一种强大的关系型数据库管理系统(RDBMS)。它使用表格(表)组织和存储数据,通过SQL语言进行数据管理。数据以表格形式存储,表之间可以建立关系。支持事务处理、多版本并发控制、安全性和权限控制。具有高可用性、容错性,支持分布式数据库和可扩展性。Oracle Corporation提供全面的支持和服务,使其成为企业级应用的首选数据库系统。
57 0
|
10月前
|
Oracle 关系型数据库 Linux
服务器Centos7 静默安装Oracle Database 12.2(下)
服务器Centos7 静默安装Oracle Database 12.2(下)
235 0
|
10月前
|
Oracle 安全 关系型数据库
服务器Centos7 静默安装Oracle Database 12.2(上)
服务器Centos7 静默安装Oracle Database 12.2(上)
91 0
|
10月前
|
存储 Oracle 关系型数据库
|
12月前
|
机器学习/深度学习 存储 Oracle
Oracle win32_11gR2_database在Win7下的安装与卸载
Oracle win32_11gR2_database在Win7下的安装与卸载
142 0

热门文章

最新文章