asp.net/c#下用参数化SQL访问时间字段

Access下的SQL语句跟Sql Server下有所不同,我在将Sql Server数据库改为Access数据库的时候,遇到些小小的挫折,稍作总结,以备参考。

假设有表Article, Article有字段EditTime,类型为“日期/时间”型,以修改EditTime为例。

         void  Update( int  nArticleID,  string  strTitle, DateTime timeEdit)
        {
            StringBuilder strSQL 
=   new  StringBuilder();
            strSQL.Append(
" Update article set Title=@strTitle, EditTime=@timeEdit where ArticleID=@nArticleID; " );
            OleDbParameter []arParas 
=   new  OleDbParameter[ 3 ];
            arParas[
0 =   new  OleDbParameter( " @strTitle " , strTitle);
            arParas[
1 =   new  OleDbParameter( " @timeEdit " , OleDbType.Date);
            arParas[
1 ].Value  =  timeEdit;
            arParas[
2 =   new  OleDbParameter( " @nArticleID " , nArticleID);

            AccessHelper.ExecuteSql(strSQL.ToString(), arParas);
        }

 

其中,关键的一条是一定要设置OleDbParameter为OleDbType.Date类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值