SqlSugar在.net中使用达梦数据库兼容做到了非常好,已经过数年的迭代
SqlSugarCore
分为大写和驼峰表2种模式,默认为大写表模式
表名 STUDENT 字段 ID NAME ,直接用就行了SqlSugar不需要设置
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() { DbType = DbType.Dm, ConnectionString ="Server=localhost; User Id=SYSDBA; PWD=SYSDBA;DATABASE=新DB" IsAutoCloseConnection = true }); //自动生成下划线看PostgreSQL文档用法差不多
需要配置禁用自动转大写
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() { DbType = DbType.Dm, ConnectionString ="Server=localhost; User Id=SYSDBA; PWD=SYSDBA;DATABASE=新DB", IsAutoCloseConnection = true, MoreSettings=new ConnMoreSettings() { IsAutoToUpper=false //禁用自动转成大写表 5.1.3.41-preview04 } }); //注意:请升级到 5.1.3.41-preview04 以上版本
更接近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();
更多用法看左边菜单
请升级到:5.1.4.90-preview10 以上版本
//连接字符串指定一下SCHEMA和=之间不要有空格 Server=153.101.199.83:5236;User Id=SYSDBA;PWD=123456;SCHEMA=myshcema;DATABASE=DAMENG
请升级到:5.1.4.92及以上版本
[SugarColumn(SqlParameterDbType =typeof(NClobPropertyConvert) )] public string Name { get; set; }
.net framework下面 dll无效
把gac里的dmprovider卸载后再用你源码里的dmprovider就可以了
无法找到方法Dm.Comand.DmparameterCollection.get_Parameters
https://www.donet5.com/ask/9/16484
2016 © donet5.comApache Licence 2.0