在中国如何使用数据库操作类牛
数据库操作类的封装是任何工程都必不可少地,本例当然也不例外。Sql类主要包括两类方法:一类用来直接执行SQL语句,另一类用来执行存储过程。 其中的数据库连接字符串的数据库路径采用了绝对路径,读者调试程序时应当做相应的更改。Sql类的具体代码如下:
using System;
using neric;
using xt;
using lClient;
using ta;
namespace MyChat
{
//数据库操作类
public class Sql
{
private string str = null; //数据库连接字符串
public SqlConnection Con; //sql数据连接组件实例化
public SqlCommand command = new SqlCommand(); //初始化一个SQL命令对象
public Sql() //类初始化,初始化数据连接
全文共1946字 {
string path = @\"C:\\Documents and Settings\\Administrator\\桌面\\tools\\
mychat1.0\\Chat\";
//数据库连接字符串
str=\"Data Source=.\\\\SQLEXPRESS;AttachDbFilename=\\\"\" + path +\"\\\\app_data\\\\f\\\";
Integrated Security=True;User Instance=True\";
Con = new SqlConnection(str);
}
#region SQL语句操作
// 执行只读数据信息的提取,返回一个datareader
public SqlDataReader GetReader(string search)
{
SqlDataReader Reader;
if(ate != en)
en(); //打开数据库连接
SqlCommand Com = new SqlCommand(search, Con);
Reader = ecuteReader(); //执行SQL语句
return Reader; //返回一个reader
}
// 输入查询字符串,返回dataset
public DataSet getMyDataSet(string sql)
{
nnection = Con; //配置command对象
mandText = sql; //赋予要执行的语句
DataSet dt = new DataSet(); //初始化一个数据返回集合
SqlDataAdapter da = new SqlDataAdapter(command);
en(); //打开连接
ll(dt); //执行语句
ose(); //关闭连接
return dt;
}
// 执行非查询SQL语句
public void ExecuteSql(string sql)
{
if(ate != en)
en(); //如果数据连接关闭,则打开
SqlCommand Com = new SqlCommand(sql, Con);
ecuteNonQuery(); //执行非查询SQL语句
ose();
}
// 执行非查询数据库操作,是否关闭数据库连接 可以选择
public void ExecuteSql(string sql, bool closeConnection)
{
if(ate != en)
en(); //如果未打开连接,则打开
SqlCommand Com = new SqlCommand(sql, Con);
ecuteNonQuery();
if (closeConnection) ose(); //如果需要关闭,则关闭连接
}
#endregion
#region 执行存储过程的代码
//输入存储过程名称,执行查询存储过程
public DataSet getDataSet(string produreName)
{
nnection = Con; //赋予连接对象
//执行的类型为存储过程
mandType = oredProcedure ;
mandText = produreName; //赋予执行的存储过程名字
DataSet dt = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(command);
en(); //打开连接
ll(dt); //填充数据
ose();
return dt; //返回数据集
}
//输入存储过程名,执行非查询存储过程
public bool exec(string produreName)
{
bool flag = false; //任务是否正确执行,初始化为false
nnection = Con; //赋予command对象以数据连接
mandType = oredProcedure;
mandText = produreName; //存储过程名称
try
{
ecuteNonQuery(); //执行存储过程
flag = true; //正确完成任务
}
finally
{
ose(); //关闭连接
}
return flag; //返回成功与否的标志
}
#endregion
}
}
查看本文来源
深圳看癫痫哪个好南昌包皮包茎治疗哪家好
西安哪白癜风医院好
- 上一页:在中启动另一个程序的实现方法覆盖
- 下一页:在中实现层呢
-
曾经我们经历多少风雨,以前敌不过如水平淡
亲爱的是什么?亲爱的是两个人因缘分相遇时的恰巧,是灵性契合时的师徒相...
2024-07-23
-
儿歌多多魔力公主西西 公主换装记 宝宝来帮公主换漂亮的衣服 儿歌多多 星河知识计划 智慧生活星 抖音
儿歌多多魔法王子西北西北 王子装配所撰 宝宝来帮王子再多漂亮的衣服 儿歌...
2023-11-21
-
验孕成功了,但却很难见到胎心胎芽?孕妈别慌,没准是日子算错了
随着黄金时代的退步,科技的演进,人们的孤独水平急剧的提高,许多父母亲...
2023-11-12
-
江苏恰当“六税两费”顶格减免额度
扬子晚报讯(路透社 刘丽媛)上周2年底,我安省快速反应鼠疫下发了“苏政...
2023-11-11
-
九分裤+乐福鞋,夏日这样穿,时髦又显高,很适合小个子
夏日傍晚,前往篇名,乐声徐徐下劝教蛙声一片。时节,冬天更为替,当夏日...
2023-11-04
-
美元霸权陨落?俄气27个买家开设卢布帐户,美元对卢布跌破59大关
这些年,American几日挥舞着“美元大棒”,不是威胁这个第三世界,就是击打...
2023-10-31