zoukankan      html  css  js  c++  java
  • 使用 MyMeta 组件获取数据库结构

    感谢阳春三月的同名文章,我尝试过使用MS默认的GetSchema(),但是获取的信息还是很有限,比如无法获取是否是自增长等,支持的数据更有限。阳春同志说的MyMeta真的非常好,试了之后拍案叫绝啊。
    这里引用他的文章前段:
        MyMeta 组件是代码自动生成工具 MyGeneration 的核心模块之一,主要负责定义和获取关系数据库结构。在 MyMeta 中定义了一套比较完整的关系数据库对象结构,并提供获取(反向工程)这些对象的方法。使用 MyMeta 能轻松地获取到数据库中大部分类型的对象的元信息,这些对象包括架构(Schema)、表、视图、存储过程、索引、列、主键、外键、存储过程参数等,虽然 关系数据库中的对象类型不止这些,但对我们一般的软件开发来说,这些信息足够了。另外 MyMeta 还支持了足够多的关系数据库类型,可以说市面上能见到的数据库系统都支持了,包括MS Access、MS SQL Server、Oracle、MySQL、DB2、Firebird、PostgreSQL、Pervasive、SQLite、VistaDB 等,并且可灵活扩展。当然,MyGeneration 全部开源,这也是我最终决定在项目中使用 MyMeta 的重要原因。

    这里提下,引用了MyMeta.dll还是不够的,它会要求添加其余的几个引用:FirebirdSql.Data.FirebirdClient.dll,MySql.Data.dll,Npgsql.dll,System.Data.SQLite.DLL等。添加完这些后,就可以正常运行他的代码了。
    贴上我的测试代码
    Code

    呵呵,是在他的代码的基础上修改的。
    获取数据库信息是创建代码生成器的第一步,哎,慢慢来,慢慢来。
    作者:KKcat
        
    个人博客:http://jinzhao.me/
        
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    【c#.Net】类:面向对象
    【c#.Net】面试题库总结50题
    【c#.Net】C#面试题(.net开发人员必备)100题
    【C#.Net】方法和参数
    如何在Tomcat (6/7/8.0) 安装SSL证书
    ubuntu16.04安装jdk/mysql/tomcat (使用apt-get命令)
    java后台处理解析json字符串的两种方式
    web开发如何使用百度地图API(一)判断点是否在范围内
    ES6的let和var声明变量的区别
    web开发如何使用高德地图API(四)通过AMap.Marker自定义标点
  • 原文地址:https://www.cnblogs.com/jinzhao/p/1534362.html
Copyright © 2011-2022 走看看