您的位置:首页 > 移动开发

CommandWrapper VB.Net代码 生成器

2006-04-20 19:15 465 查看
我们在使用MS Enterprise Library Data Block 对Oracle数据库表做增、删、改。通常使用Database 对象 的UpdateDataSet()方法。例如:
数据库有一个表Test_01,此表包括两个字段分别是 :

id char(2) not null,
name char(6)
对数据集的进行增删改(略)后,通过UpdateDataSet()方法更新数据库,例如:

Public Sub UpdateDS()Sub UpdateDS(ByVal ds As DataSet)
Dim _Database As Database = DatabaseFactory.CreateDatabase()
Dim insertSQL As String = " Insert Into TEST_01 ( ID,NAME) values(:ID,:NAME) "
Dim insertCommandWrapper As DBCommandWrapper = _Database.GetSqlStringCommandWrapper(insertSQL)
insertCommandWrapper.AddInParameter("ID", DbType.String, "ID", DataRowVersion.Current)
insertCommandWrapper.AddInParameter("NAME", DbType.String, "NAME", DataRowVersion.Current)
Dim updateSQL As String = " Update TEST_01 Set NAME = :NAME where ID = :ID "
Dim updateCommandWrapper As DBCommandWrapper = _Database.GetSqlStringCommandWrapper(updateSQL)
updateCommandWrapper.AddInParameter("ID", DbType.String, "ID", DataRowVersion.Current)
updateCommandWrapper.AddInParameter("NAME", DbType.String, "NAME", DataRowVersion.Current)
Dim deleteSQL As String = " Delete From TEST_01 Where ID = :ID "
Dim deleteCommandWrapper As DBCommandWrapper = _Database.GetSqlStringCommandWrapper(deleteSQL)
deleteCommandWrapper.AddInParameter("ID", DbType.String, "ID", DataRowVersion.Original)
Try
_Database.UpdateDataSet(ds, ds.Tables(0).TableName, insertCommandWrapper, updateCommandWrapper, deleteCommandWrapper, UpdateBehavior.Standard)

Catch ex As Exception
Throw ex
End Try
End Sub
如果表中的字段很多,我们需要写大量的代码。我在网上搜索了一下这方面的自动生成代码工具,例如CodeSmith,但是都是对sqlsever数据库自动生成代码。我花了一点时间,在网友的代码基础上,写了一个Oracle DBCommandWrapper 生成器工具。现在放到网上,代码有问题,可以通过邮件给我写信,我的邮箱地址是hnhl@163.com
工具下载地址:http://files.cnblogs.com/HuangLiang/DBCommandWrapperGenerator.rar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: