这是一个.net下操作数据库(结构数据库)的工具类,支持sqlserver、oracle、mysql、postgres、sqlite、access等常见数据库。
注意:它并不是一个orm工具(常见的orm框架如:EF、Dapper等)。
2.1 引入DBUtil依赖
1. 首先打开vs(推荐vs2019),新建控制台应用程序(.net framework)
2. 添加依赖方法1:打开工具>NuGet包管理器>程序包管理器控制台,输入:
Install-Package DBUtil -Version 1.0.0
3. 添加依赖方法2:使用可视化的nuget管理窗口搜索“DBUtil”,选择安装即可!
2.2 准备数据库
自行准备吧。
2.3 增删改查代码
DBUtil.IDbAccess iDb = DBUtil.IDBFactory.CreateIDB("Data Source=.;Initial Catalog=JACKOA;User ID=sa;Password=xx;","SQLSERVER");
Console.WriteLine(iDb.GetFirstColumnString("select Name from SysUser"));
Console.WriteLine(iDb.ExecuteSql("updatetest set CaseNo=CaseNo+'e'"));
Console.WriteLine(iDb.ExecuteSql("update test set CaseNo=@case",newIDataParameter[] { iDb.CreatePara("case","123") }));
Hashtable ht = newSystem.Collections.Hashtable();
ht.Add("CaseNo", "456");
ht.Add("Name", "ji");
Console.WriteLine(iDb.AddData("test",ht));
Hashtable ht2 = newSystem.Collections.Hashtable();
ht2.Add("Name", "jiko");
Console.WriteLine(iDb.UpdateData("test",ht2," and CaseNo='123'"));
Console.WriteLine(iDb.DeleteTableRow("test"," and id=11"));
Console.WriteLine(iDb.GetDataSet("select * from sysuser").Tables[0].Rows.Count);
在这个组件设计中,所有的数据库操作方法都被集成在了一个对象上:IDbAccess。它是一个接口,定义了公共的数据库访问方法,如:增删改查、事务控制等。具体的实现由SqlServerIDbAccess、MySqlIDbAccess、PostgreSqlIDbAccess、OracleIDbAccess、AccessIDbAccess、SQLiteIDbAccess等实现,它们分别对应着一种数据库。
在所有的数据库操作之前,都必须先创建IDbAccess对象,创建的方法如下:
DBUtil.IDbAccess iDb = DBUtil.IDBFactory.CreateIDB("Data Source=.;Initial Catalog=J