达梦数据库 .NET 操作

表模式

分为大写和驼峰表2种模式,默认为大写表模式

 规范(大写表) 

表名 STUDENT  字段 ID  NAME   ,直接用就行了SqlSugar不需要设置

 SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
 {
       DbType = DbType.Dm,
       ConnectionString = Config.ConnectionString,
       IsAutoCloseConnection = true
 });
  //自动生成下划线看PostgreSQL文档用法差不多

不规范(驼峰表 New)

 需要配置禁用自动转大写

 SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
 {
       DbType = DbType.Dm,
       ConnectionString = Config.ConnectionString,
       IsAutoCloseConnection = true,
       MoreSettings=new ConnMoreSettings() { 
           IsAutoToUpper=false //禁用自动转成大写表 5.1.3.41-preview04
       }
   });
  //注意:请升级到 5.1.3.41-preview04 以上版本


安装

只需要引用 SqlSugarCore

达梦

 更接近Oracle,更偏向自主研发,对开发人员友好度不如金仓 

 至于其它国产数据库基本上都和PgSql 99.9%一样,建议你们还是用人大金仓比较省心

 连接字符串:

 老版本 :PORT=5236;DATABASE=DAMENG;HOST=localhost;PASSWORD=SYSDBA;USER ID=SYSDBA

 新版本: Server=localhost; User Id=SYSDBA; PWD=SYSDBA;DATABASE=新DB


达梦操作数据库

 SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
 {
            ConnectionString = "Server=.xxxxx",//连接符字串
            DbType = DbType.Dm, //数据库类型
            IsAutoCloseConnection = true //不设成true要手动close
 });

查询

db.Queryable<Student>().ToList()//查询所有
db.Queryable<Student>().Where(it=>it.Id==1).ToList()//根据条件查询

//分页  int pageIndex = 1; // pageindex是从1开始的不是从零开始的
  int pageSize = 20;
  int totalCount=0;
  //单表分页
  var page = db.Queryable<Student>().ToPageList(pageIndex, pageSize, ref totalCount);

插入

//返回插入行数
db.Insertable(insertObj).ExecuteCommand(); //都是参数化实现 
//插入返回自增列
db.Insertable(insertObj).ExecuteReturnIdentity(); 
//返回雪花ID 看文档3.1具体用法(在最底部)
long id= db.Insertable(实体).ExecuteReturnSnowflakeId();

更多用法看左边菜单


常见错误

.net framework下面  dll无效

把gac里的dmprovider卸载后再用你源码里的dmprovider就可以了

无法找到方法Dm.Comand.DmparameterCollection.get_Parameters

https://www.donet5.com/ask/9/16484

文档:SqlSugar5.0