• 一个支持DbFirst、ModelFirst和CodeFirst的数据库小工具DbTool


    DbTool

    一个支持DbFirst、ModelFirst和CodeFirst的数据库工具。


    简介

    这是一个针对 SqlServer 数据库C# 开发语言的小工具,可以利用这个小工具生成数据库表对应的 Model,并且会判断数据表列是否可以为空,可以为空的情况下会使用可空的数据类型,如int? 、DateTime? ,如果数据库中有列描述信息,也会生成在属性名称上添加列描述的注释,支持导出多个表;可以导出到Excel,可以根据Excel字段文档生成Sql,数据库表误删除又没有备份的时候就很有帮助了,而且支持反向的根据生成的Model去生成创建数据库表的Sql。

    注:暂时不支持索引及外键等需要关联另外一张表的数据关系


     为什么使用它

    1. [x] 根据表字段信息生成创建表 Sql(Model First)
    2. [x] 导入 Excel 文件生成创建表的 Sql(Model First)
    3. [x] 根据数据库表信息生成数据库表 Excel 文档(Db First)
    4. [x] 根据数据库表信息生成 Model 文件,支持数据列可空导出为可空数据类型/支持导出列描述信息(Db First)
    5. [x] 根据 Model 生成 sql 语句(Code First)
    6. [x] 支持一次导出多张数据表/支持一次选择多个 Model 文件(Code First)

    后续功能
    • [ ] 配置化,使用配置文件保存配置以免每次都要设置参数及选项等
    • [ ] 迁移到 UWP,直接从 Win10 应用商店下载
    • [ ] 插件式自定义扩展Model信息
    • [ ] 支持 MySql

     功能一览

         

                                                                                  DbFirst

         

                                                                               ModelFirst

         

                                                                               CodeFirst


     使用说明

          DbFirst

          1、导出数据库表到Model

                1)设置数据库连接字符串,并连接数据库;

                2)设置导出 Model 选项;

                3)选择要导出 Model 的数据库表;

                4)导出 Model;

                Model 设置选项说明:

                      model的命名空间:生成的 model 所在的命名空间,默认为 Models,不可为空,为空则使用默认值Models

                      model前缀:表名的基础上加的前缀,默认为空

                      model后缀:表名的基础上加的后缀,默认为Model,可以为空

                      生成私有字段,默认为 false,如果为false则使用自动属性的代码风格,反之,使用传统 get;set; 风格代码,如:

    1 public int Id { get; set; } //自动属性风格代码
    2 private int id1;
    3 public int Id1 { get{ return id1; } set { id1 = value; } } //传统get;set风格代码

                      生成 Description Attribute,默认值为 true,如果为true则会在属性字段上生成一个[Description]的Attribute,如果为false则不生成,效果如下:

    1 /// <summary>用户名</summary> [Description("用户名")]
    2 public string UserName { get;set; } 

                       生成 Model 名称的规则说明:生成的Model的名称由前缀和表名称及后缀拼接而成,如果表名以 tabtab_tbltbl_这些开头,则会先把这些移除掉再拼接。

           2、导出数据库表到Excel

                1)设置数据库连接字符串,并连接数据库;

                2)选择要导出到 Excel 的数据库表;

                3)导出到 Excel;

           ModelFirst

           可以手动填写信息或者先填写 Excel 再进行导入操作;

          只生成Sql语句,不会自动在数据库里创建表,根据生成的 Sql 语句再创建表;

           CodeFirst

           根据已有的Model生成创建表的Sql ,字段注释会从属性的DescriptionAttribute中获取;

          根据需要设置是否生成数据库描述Sql;

          左侧生成表字段信息,右侧生成创建表的sql,生成的Sql仅供参考,请自行根据需要调整数据类型以及字段长度;

           下载DbTool
  • 相关阅读:
    开源围棋A.I. FoolGo
    再写围棋的MC模拟
    棋串的数据结构
    一种Lua到C的封装
    用vim写ios程序
    一种C函数到Lua的封装
    Unix命令
    RSA java rsa加密,解密,生成密钥对工具类
    UOS 开启远程登录
    UOS 设置 java 程序开机启动
  • 原文地址:https://www.cnblogs.com/supersnowyao/p/8435466.html
Copyright © 2020-2023  润新知