使用ADODB在C#

我们知道在C#和VB.net中,已经不推荐用ADODB了,但是用ADO.net中的各种添加记录的方法时,都很麻烦,而且针对不同的数据提供器,取得自动编号的方法各不相同,多么怀念ADODDB中的:
         Rs.Open("SELECT TOP 1 * FROM [YourTable]", Conn, adOpenKeyset, adLockOptimistic, adCmdText);
        Rs.AddNew(vtMissing, vtMissing);
        Rs.Fields["FiledA_Name"].Value = FiledA_Value;
        Rs.Fields["FiledB_Name"].Value = FiledB_Name;
        Rs.UpdateBatch(adAffectCurrent);     
        long nNewItemID = (long)Rs.Fields["_ID"].Value;
        Rs.Close();

其实在C#中也可以用ADODB,只需要在工程的引用中添加C:\Program Files\Common Files\System\ado\msado15.dll,并这样定义vtMissing:

	System.Reflection.Missing vtMissing = System.Reflection.Missing.Value;

下面样式的代码就完全可用了:

        ADODB.Recordset Rs = new ADODB.Recordset();
        string sSql = "SELECT TOP 1 * FROM [YourTable]";
        Rs.Open(sSql, Conn, ADODB.CursorTypeEnum.adOpenKeyset, ADODB.LockTypeEnum.adLockOptimistic, (int)ADODB.CommandTypeEnum.adCmdText);
        Rs.AddNew(vtMissing, vtMissing);
        Rs.Fields["FiledA_Name"].Value = FiledA_Value;
        Rs.Fields["FiledB_Name"].Value = FiledB_Name;
        Rs.UpdateBatch(ADODB.AffectEnum.adAffectCurrent);     
        long nNewItemID = Convert.ToInt64(Rs.Fields["_ID"].Value);
        Rs.Close();


 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值