概述C#数据库操作类

开发 后端
这里介绍C#数据库操作类主要包括两类方法:一类用来直接执行SQL语句,另一类用来执行存储过程,其中的数据库连接字符串的数据库路径采用了绝对路径。

C#数据库操作类的封装是任何工程都必不可少地,本例当然也不例外。C#数据库操作类主要包括两类方法:一类用来直接执行SQL语句,另一类用来执行存储过程。

其中的数据库连接字符串的数据库路径采用了绝对路径,读者调试程序时应当做相应的更改。C#数据库操作类具体代码如下:

usingSystem;  
usingSystem.Collections.Generic;  
usingSystem.Text;  
usingSystem.Data.SqlClient;  
usingSystem.Data;  
namespaceMyChat  
 
{  
 
//数据库操作类  
 
publicclassSql  
{  
privatestringstr=null;//数据库连接字符串  
publicSqlConnectionCon;//sql数据连接组件实例化  
publicSqlCommandcommand=newSqlCommand();//初始化一个SQL命令对象  
publicSql()//类初始化,初始化数据连接  
{  
stringpath=@"C:\DocumentsandSettings\Administrator\桌面\tools\  
mychat1.0\Chat";  
//数据库连接字符串  
str="DataSource=.\\SQLEXPRESS;AttachDbFilename=\""+path+"\\app_data\\chat.mdf\";  
IntegratedSecurity=TrueUserInstance=True";  
Con=newSqlConnection(str);  
}  
 
#regionSQL语句操作  
 
//执行只读数据信息的提取,返回一个datareader  
 
publicSqlDataReaderGetReader(stringsearch)  
{  
SqlDataReaderReader;  
if(Con.State!=ConnectionState.Open)  
Con.Open();//打开数据库连接  
SqlCommandCom=newSqlCommand(search,Con);  
Reader=Com.ExecuteReader();//执行SQL语句  
returnReader;//返回一个reader  
}  
 
//输入查询字符串,返回dataset  
 
publicDataSetgetMyDataSet(stringsql)  
{  
command.Connection=Con;//配置command对象  
command.CommandText=sql;//赋予要执行的语句  
DataSetdt=newDataSet();//初始化一个数据返回集合  
SqlDataAdapterda=newSqlDataAdapter(command);  
Con.Open();//打开连接  
da.Fill(dt);//执行语句  
command.Connection.Close();//关闭连接  
returndt;  
}  
 
//执行非查询SQL语句  
 
publicvoidExecuteSql(stringsql)  
{  
if(Con.State!=ConnectionState.Open)  
Con.Open();//如果数据连接关闭,则打开  
SqlCommandCom=newSqlCommand(sql,Con);  
Com.ExecuteNonQuery();//执行非查询SQL语句  
Con.Close();  
}  
 
//执行非查询数据库操作,是否关闭数据库连接可以选择  
 
publicvoidExecuteSql(stringsql,boolcloseConnection)  
{  
if(Con.State!=ConnectionState.Open)  
Con.Open();//如果未打开连接,则打开  
SqlCommandCom=newSqlCommand(sql,Con);  
Com.ExecuteNonQuery();  
if(closeConnection)Con.Close();//如果需要关闭,则关闭连接  
}  
 
#endregion  
#region执行存储过程的代码  
 
//输入存储过程名称,执行查询存储过程  
publicDataSetgetDataSet(stringprodureName)  
{  
command.Connection=Con;//赋予连接对象  
//执行的类型为存储过程  
command.CommandType=CommandType.StoredProcedure;  
command.CommandText=produreName;//赋予执行的存储过程名字  
DataSetdt=newDataSet();  
SqlDataAdapterda=newSqlDataAdapter(command);  
Con.Open();//打开连接  
da.Fill(dt);//填充数据  
command.Connection.Close();  
returndt;//返回数据集  
}  
 
//输入存储过程名,执行非查询存储过程  
 
publicboolexec(stringprodureName)  
{  
boolflag=false;//任务是否正确执行,初始化为false  
command.Connection=Con;//赋予command对象以数据连接  
command.CommandType=CommandType.StoredProcedure;  
command.CommandText=produreName;//存储过程名称  
try  
{  
command.ExecuteNonQuery();//执行存储过程  
flag=true;//正确完成任务  
}  
 
finally  
{  
command.Connection.Close();//关闭连接  
}  
returnflag;//返回成功与否的标志  
}  
#endregion  
}  

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.
  • 100.
  • 101.
  • 102.
  • 103.
  • 104.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113.
  • 114.
  • 115.
  • 116.
  • 117.

【编辑推荐】

  1. 浅析C# ArrayList
  2. C#对象初始化学习总结
  3. 使用C#正则表达式匹配相关字符串
  4. C#改写方法学习笔记
  5. 概述C#加框和消框
责任编辑:佚名 来源: 博客园
相关推荐

2009-08-25 12:50:32

数据库常用C#代码

2009-07-31 17:01:21

C#存取Access数

2009-08-25 16:36:16

C#进行数据库编程

2009-09-01 09:45:49

Visual C#对数

2024-04-18 09:56:16

2009-09-03 10:42:16

C# Employee

2009-07-31 16:45:23

ASP.NET数据库操

2009-08-10 18:05:19

C#数据库查询

2009-08-19 16:30:55

C#操作Access数

2009-08-19 16:40:26

C#操作Access数

2009-09-04 13:31:33

C#抽象类

2024-04-03 00:06:03

2009-08-11 13:35:13

C# Berkeley

2009-08-28 16:14:26

C#实现加载动态库

2009-08-19 16:19:01

C#操作Access数

2009-08-24 16:46:04

C# 泛型

2009-03-19 10:08:09

C#数据库查询

2009-09-04 18:00:54

C#数据访问层

2009-08-07 16:19:00

C#下数据库编程

2009-08-12 14:27:36

访问MySQL数据库C# ODBC
点赞
收藏

51CTO技术栈公众号