SqlSugar对于Gbase 8S数据库支持相当成熟,已经有N多用户交付项目,支持GBase8s已经好多年了
Gbase官方用户大量使用SqlSugar,50%的代码来自Gbase官方开发人员提供。
修复了大量ODBC连接存在的BUG,ODBC 连接中bigint报错,特殊版本Linux报错等
SqlSugarCore 158+
SqlSugar.GBaseCore 5.1.4.162+ 5.1.4.162+ (162已知BUG自动释放无效需要手动,请升级170)
SqlSugar.GBaseCore 5.1.4.170 升级了驱动 修复了自动释放无效BUG
需要安装Odbc驱动
南大通用clientsdk_3.0.0_1_93e040_WIN2003_x86_64
我们可以到 控制面板\所有控制面板项\管理工具\Odbc64数据源 查看是否已安装

SqlSugar.GBaseCore SqlSugarCore
端口注入19088或者9088为默认 (我Doker安装是19088)
//新版本: SqlSugar.GBaseCore 5.1.4.162+
Host=localhost;Service=19088;
Server=gbase01;Database=testdb;Protocol=onsoctcp;
Uid=gbasedbt;Pwd=GBase123;Db_locale=zh_CN.utf8;Client_locale=zh_CN.utf8
//老版本
Driver={GBase ODBC DRIVER (64-Bit)};Host=localhost;Service=19088;
Server=gbase01;Database=testdb;Protocol=onsoctcp;
Uid=gbasedbt;Pwd=GBase123;Db_locale=zh_CN.utf8;Client_locale=zh_CN.utf8//程序启动时只执行一次
InstanceFactory.CustomAssemblies =
new System.Reflection.Assembly[] { typeof(GBaseProvider).Assembly };
//创建db对象和其他库一样用法
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = "上面的字符串",
DbType = DbType.GBase, //GBase
IsAutoCloseConnection = true
},
db=>{
//aop
});普通插插+分页 这种方式最快 (不支持bulkcopy)
//10-100 为佳 字段多就10 字段少就100 db.Insertable(updateObjs).PageSize(50).ExecuteCommand();
升级最新
SqlSugarCore 158+
SqlSugar.GBaseCore 5.1.4.162+
时间类型数据库使用 DATETIME YEAR TO FRACTION(5) 类型
官方文档建库语句没加with log 不支持事务,要修改库支持事务
var list = db.Queryable<Order>()
.GroupBy("y")//gbase分组不能函数只能是别名
.Select(it=>new { y=it.CreateTime.Year }) //别名是y
.ToList();2016 © donet5.comApache Licence 2.0