社区
VB
帖子详情
求一个VB.NET写的数据库连接和操作的共有类,能实现查询,插入,更新,删除功能的。
meiziqingqing
2005-07-25 08:39:52
看了一些别人写的代吗,看到好多的把数据库连接写在页面里,感觉比较乱,
求一个VB.NET写的数据库连接和操作的共有类,能实现查询,插入,更新,删除功能的。
...全文
789
38
打赏
收藏
求一个VB.NET写的数据库连接和操作的共有类,能实现查询,插入,更新,删除功能的。
看了一些别人写的代吗,看到好多的把数据库连接写在页面里,感觉比较乱, 求一个VB.NET写的数据库连接和操作的共有类,能实现查询,插入,更新,删除功能的。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
38 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lyfer
2006-07-02
打赏
举报
回复
shuchangbing@tom.com
pkkquan
2006-07-02
打赏
举报
回复
编程乐园 VB.Net 群:12328794 欢迎大家加入,研究学习
cnwd
2006-07-02
打赏
举报
回复
cnwd@163.com
我也想要一个
谢谢大家
清风树下
2005-11-02
打赏
举报
回复
yushubin@163.com
太好了!我十分想要一个看看
麻烦各位了
清风树下
2005-10-10
打赏
举报
回复
谢谢!
sunnywxl100
2005-10-09
打赏
举报
回复
太好了!我十分想要一个看看
麻烦各位了
wxl2002_0_0@yahoo.com.cn
Qqwwee_Com
2005-10-09
打赏
举报
回复
http://blog.csdn.net/qqwwee_com/archive/2005/09/06/472981.aspx
代码生成器:for oledb ,for sql2000
for c#,for vb.net
===============================
CSDN小助手 是一款脱离浏览器也可以使用csdn论坛的
软件!
界面: http://qqwwee.com/
下载: http://qqwwee.com/csdn.rar 包含源代码
yejunyan
2005-10-04
打赏
举报
回复
最好给个实例!谢谢。
sz_lgp
2005-09-28
打赏
举报
回复
有下载的吗?请发给我,research@kolormagnetics.com
lsqmax
2005-09-28
打赏
举报
回复
LionWangCity(完美生活) ,给我也发一个嘛,先谢谢了
liusq16888@163.com
coolbinzi
2005-09-28
打赏
举报
回复
My E_mail:guobin609@163.com
Thank You!
qjzrd
2005-08-21
打赏
举报
回复
学习
xuxun
2005-08-17
打赏
举报
回复
mark一下,有空看看,但效率高吗?
kason_j
2005-08-17
打赏
举报
回复
谢谢. stringbuilder(~~~热心海豚~~~)
非常值得学习!!!!!!!
kitecloud126
2005-08-16
打赏
举报
回复
UP
fengzheng36@126.com
super_zhaowenke
2005-08-13
打赏
举报
回复
easy
xmls_lu
2005-08-13
打赏
举报
回复
up
mmla
2005-08-13
打赏
举报
回复
mack
qjzrd
2005-08-13
打赏
举报
回复
学习中
stringbuilder
2005-08-04
打赏
举报
回复
public SqlParameter _MakeInParam(string ParamName, SqlDbType DbType, int Size, object Value)
{
return _MakeParam(ParamName, DbType, Size, ParameterDirection.Input, Value);
}
public SqlParameter _MakeOutParam(string ParamName, SqlDbType DbType, int Size)
{
return _MakeParam(ParamName, DbType, Size, ParameterDirection.Output, null);
}
public SqlParameter _MakeParam(string ParamName, SqlDbType DbType, Int32 Size, ParameterDirection Direction, object Value)
{
SqlParameter param;
if(Size > 0)
param = new SqlParameter(ParamName, DbType, Size);
else
param = new SqlParameter(ParamName, DbType);
param.Direction = Direction;
if (!(Direction == ParameterDirection.Output && Value == null))
param.Value = Value;
return param;
}
public bool _AddTableRow(string table_name,Hashtable ht)
{
//建立空结构表
DataSet ds = new DataSet();//
System.Type colType;
string subStr;
byte[] subBytes;
System.Text.StringBuilder sb = new System.Text.StringBuilder("");
int colLen;
this.Initi(this.m_Adapter);//
this.Initi(m_Command);//
m_Command.CommandText = "select * from "+table_name+" where 1=2";//
m_Adapter.SelectCommand = m_Command;//
m_Adapter.SelectCommand.Transaction = m_Trans;//
m_Adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
m_Adapter.Fill(ds,table_name);//
//建立新行
m_DataRow = ds.Tables[table_name].NewRow();//
System.Collections.IDictionaryEnumerator mycollection = ht.GetEnumerator();//
//遍历循环
while(mycollection.MoveNext())
{
if(mycollection.Value == null ||
(mycollection.Value.ToString() == "" && ds.Tables[table_name].Columns[mycollection.Key.ToString()].AllowDBNull))
{
m_DataRow[mycollection.Key.ToString()] = DBNull.Value;//
}
else
{
colType = ds.Tables[table_name].Columns[mycollection.Key.ToString()].DataType;
colLen = ds.Tables[table_name].Columns[mycollection.Key.ToString()].MaxLength;
if(colType == System.Type.GetType("System.String") && colLen > 0)
{
subStr = (string)mycollection.Value;//取值
//取数据库中对应长度
colLen = Math.Min(colLen, System.Text.Encoding.Default.GetByteCount(subStr.ToCharArray()));
subBytes = System.Text.Encoding.Default.GetBytes(subStr);
sb.Remove(0, sb.Length);
//截取串
subStr = sb.Append(System.Text.Encoding.Default.GetChars(subBytes, 0, colLen)).ToString();
//subStr.Replace("'", "''");
m_DataRow[mycollection.Key.ToString()] = subStr;
}
else if(colType == System.Type.GetType("System.DateTime"))
{
//如果数据类型是时间,但数据不正确,就写入NULL
if(mycollection.Value.ToString() == "0001-1-1 0:00:00")
m_DataRow[mycollection.Key.ToString()] = DBNull.Value;//
else
m_DataRow[mycollection.Key.ToString()] = mycollection.Value;//
}
else
m_DataRow[mycollection.Key.ToString()] = mycollection.Value; //
}
}
//增加新行
ds.Tables[table_name].Rows.Add(m_DataRow);//
//提交到数据库
m_Builder = new SqlCommandBuilder(m_Adapter);//
this.m_Adapter.Update(ds,table_name);//
return true;
}
public bool _UpdateTableRow(string table_name,Hashtable ht_Data,Hashtable ht_Condition)
{
//建立空结构表
// this.Initi(m_DataSet);//
System.Type colType;
string subStr;
byte[] subBytes;
System.Text.StringBuilder sb = new System.Text.StringBuilder("");
int colLen;
DataSet ds = new DataSet();//
this.Initi(m_Adapter);//
this.Initi(m_Command);//
//取得条件确定唯一一条记录的条件
string strCondition=" where (1=1) ";//
System.Collections.IDictionaryEnumerator myWhere = ht_Condition.GetEnumerator();
while(myWhere.MoveNext())
{
strCondition+=(" and ("+myWhere.Key.ToString()+"='"+myWhere.Value.ToString()+"')");//
}
m_Command.CommandText = "select * from "+table_name+strCondition;//
m_Adapter.SelectCommand = m_Command;//
m_Adapter.SelectCommand.Transaction = m_Trans;//
m_Adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
m_Adapter.Fill(ds,table_name);//
//建立新行
m_DataRow = ds.Tables[table_name].Rows[0];
System.Collections.IDictionaryEnumerator myData = ht_Data.GetEnumerator();
//遍历循环
while(myData.MoveNext())
{
if(myData.Value == null ||
(myData.Value.ToString() == "" && ds.Tables[table_name].Columns[myData.Key.ToString()].AllowDBNull))
{
m_DataRow[myData.Key.ToString()] = DBNull.Value;
}
else
{
colType = ds.Tables[table_name].Columns[myData.Key.ToString()].DataType;
colLen = ds.Tables[table_name].Columns[myData.Key.ToString()].MaxLength;
if(colType == System.Type.GetType("System.String") && colLen > 0)
{
subStr = (string)myData.Value;
colLen = Math.Min(colLen, System.Text.Encoding.Default.GetByteCount(subStr.ToCharArray()));
subBytes = System.Text.Encoding.Default.GetBytes(subStr);
sb.Remove(0, sb.Length);
subStr = sb.Append(System.Text.Encoding.Default.GetChars(subBytes, 0, colLen)).ToString();
//subStr.Replace("'", "''");
m_DataRow[myData.Key.ToString()] = subStr;
}
else if(colType == System.Type.GetType("System.DateTime"))
{
//如果数据类型是时间,但数据不正确,就写入NULL
if(myData.Value.ToString() == "0001-1-1 0:00:00")
m_DataRow[myData.Key.ToString()] = DBNull.Value;//
else
m_DataRow[myData.Key.ToString()] = myData.Value;//
}
else
m_DataRow[myData.Key.ToString()] = myData.Value; //
}
}
//提交到数据库
m_Builder = new SqlCommandBuilder(m_Adapter);//
this.m_Adapter.Update(ds,table_name);//
return true;
}
public bool _DeleteTableRow(string table_name,Hashtable ht_Condition)
{
//建立空结构表
// this.Initi(m_DataSet);//
DataSet ds = new DataSet();//
this.Initi(m_Adapter);//
this.Initi(m_Command);//
//取得条件确定唯一一条记录的条件
string strCondition=" where (1=1) ";//
System.Collections.IDictionaryEnumerator myWhere = ht_Condition.GetEnumerator();
while(myWhere.MoveNext())
{
strCondition+=(" and ("+myWhere.Key.ToString()+"='"+myWhere.Value.ToString()+"')");//
}
m_Command.CommandText = "select * from "+table_name+strCondition;//
m_Adapter.SelectCommand = m_Command;//
m_Adapter.SelectCommand.Transaction = m_Trans;//
m_Adapter.Fill(ds,table_name);//
ds.Tables[table_name].Rows[0].Delete();//
//提交到数据库
m_Builder = new SqlCommandBuilder(m_Adapter);//
this.m_Adapter.Update(ds,table_name);//
return true;
}
/// <summary>
/// 更新数据库
/// </summary>
/// <param name="dt">数据</param>
/// <returns></returns>
public bool _UpdateData(DataTable dt)
{
m_Builder = new SqlCommandBuilder(m_Adapter);//
this.m_Adapter.Update(dt);//
return true;
}
/// <summary>
/// 取得某序列的唯一标号
/// </summary>
/// <param name="snType">序列类型</param>
/// <returns>唯一编号</returns>
public int _GetSerialNum(string snType)
{
SqlParameter[] paras = {
this._MakeInParam("@snType",System.Data.SqlDbType.VarChar,40,snType)
};//
return this._RunProc("up_GetSN",paras);//
}
public string _GetSystemConfig(string key)
{
object retValue;
string sql = @"select f_system_config_value from ts_system_config where f_system_config_key = '" + key + "'";
retValue = _ExecuteScalar(sql);
if(retValue != null)
return (string)retValue;
else
return "";}}}
加载更多回复(18)
VB.NET
与 sql数据库
本文介绍
VB.NET
中SQL数据库的基本
操作
,包括
查询
、
插入
、
更新
和
删除
数据的具体
实现
方法,并提供了相应的代码示例。
ASP.NET (VB)
数据库连接
与
操作
实战案例
本文向初级开发者展示在
VB.NET
环境中,使用ADO.NET组件与数据库交互的方法。涵盖
数据库连接
建立、连接池应用、SQL
查询
执行与结果处理、数据增删改
操作
及事务处理,还介绍了错误处理机制,以提高应用安全性和性能。
vb.net
操作
access数据库实例教程:让数据库
操作
更简单
本教程提供
VB.NET
操作
Access数据库的详细示例,涵盖连接数据库、创建表、
插入
、
查询
、
更新
和
删除
数据等核心
功能
。基于ADO.NET技术,适用于教育、企业开发、个人项目等场景,具有简洁易懂、实战性强等特点,能助力开发者提升效率。
VB.NET
数据库
操作
实战指南
本文详细介绍
VB.NET
环境下数据库
操作
流程,涵盖连接数据库、执行SQL
查询
、处理结果、增删改
操作
、事务处理和数据缓存等。通过代码示例展示如何用ADO.NET
类
库与SQL Server等数据库交互,强调异常处理和连接管理的重要性。
VB.NET
学习笔记:ADO.NET
操作
ACCESS数据库——数据集DataSet数据管理(DataAdapter
查询
更新
数据库)
本文详细介绍了使用
VB.NET
的ADO.NET
操作
ACCESS数据库,通过OleDbDataAdapter对象填充数据集并
更新
数据库。内容包括:使用OleDbDataAdapter的Fill和Update方法,OleDbCommandBuilder自动生成SQL语句,数据集的表架构填充,自定义数据集结构以及ColumnMappings的使用。此外,还强调了在使用DataAdapter时不需要手动打开连接,并指出了ACCESS数据库不支持多条SQL语句执行的特点。
VB
16,717
社区成员
110,522
社区内容
发帖
与我相关
我的任务
VB
VB技术相关讨论,主要为经典vb,即VB6.0
复制链接
扫一扫
分享
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章