文章出處

以下問題都是容易忽略,但卻不容易找出問題的所在,讓我頭疼不少,故在此列出,即是一個總結,同樣也給其他人參與!

1.使用參數形式執行SQL命令時,參數數組需與在SQL語句中參數名出現的位置及名稱必須完全相同,否則執行不成功,但不會報錯;

sql="insert table(a,b,c) values(@a,@b,@c)"

params={@a,@c,@b}  --->這是錯誤的

params={@a,@b,@c}  --->這是正確的

 

2.使用參數形式執行SQL命令時,當字段類型為時間類型時,需要顯形聲明參數類型為Date,不能采用參數名+值的形式

sql="update table set editdate=@dt"

param=new oledbparameter("@dt",DateTime.Now)  -->這是錯誤的,執行時會報錯:標準表達式中數據類型不匹配

param=new oledbparameter("@dt",OleDbType.Date){Value=DateTime.Now} -->這是正確的

 

3.注意ACCESS數據庫保留字,盡量不要使用該類字作為字段名,若確實需要使用,則應該加上方括號,顯示說明

sql="update user set name='xxx'"  -->這是錯誤的

sql="update [user] set [name]='xxx'"  -->這是正確的,顯示說明非系統保留字


文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()