常用SQL語句參數化+顯示查詢結果

來源:互聯網
上載者:User

常用SQL語句參數化集合:

在不同的SQL語句中使用參數化的方式不盡相同,但一般都是用預留位置,然後用command對象添加參數如來實現,現在把常用的參數化方法列表如下:

1.select語句的參數化:使用資料庫應用最多的恐怕要是查詢語句了,他的參數化參數化方法比較常見。

strSql = "select * from table1 where Name=@name "
cmd = New SqlCommand(strSql, Conn)
cmd.Parameters.AddWithValue("rechargeteacher", StuRechargeRecord.ReacherTeacher)

其中Conn 為一個sqlconnection對象用來串連資料庫,如果有多個參數方式相同。

 

2.inset語句的參數化:insert語句用於向資料庫中添加一條新的記錄,他的參數化方法如下:

strSql = "insert into StuCardEnroll(StuCardNo) values(@stucardno)"
cmd = New SqlCommand(strSql, Conn)
cmd.Parameters.Add("@stucardno", SqlDbType.NVarChar, 60).Value = stuenrollrecord.StuCardNo

 

3.update語句的參數化,用來更新資料庫中某個欄位的值:

strSql = "update UserLogOnRecord set LogOffTime=@logofftime <a href="mailto:StuCardNo=@"">"

cmd = New SqlCommand(strSql, Conn)
cmd.Parameters.AddWithValue("logoffdate", strTodayDate)

(參數abc應該為實體類的某個屬性的值,這裡由於沒有列出實體類,所以用字串abc代替,另外這個給出的sql語句是更新表中所有記錄的LogOffTime欄位的值為給定的值,如果僅僅要更新某條記錄的該欄位值則需在語句後面給出where條件)。

 

參數化查詢資料顯示的兩種方法:

相信有過資料庫使用經驗的人都應該知道一般我們用sqlcommand對象和sqldatareader來進行查詢並且來判斷是否有查詢記錄,而如果是要將查詢結果顯示在介面上一般要用到的是sqldataadapter和datatable對象,(筆者一般用sqlcommand對象進行參數化查詢並不是清楚如何用dataadapter對象來進行參數化查詢,如能相告不勝感激),但是如果現在我想要用參數化查詢並且要將查詢結果顯示在表單上如何做呢,下面舉兩中小方法:

1.用datatable的load() 方法:

其實我們可以用sqlcommand對象+sqldatareader對象+datatable對象來進行資料顯示.我們用sqlcommand對象進行參數化查詢,然後然後將查詢結果賦給sqldatareader對象,最後利用datatable對象的load()方法即可將sqlreader中記錄放入datatable對象中,返回一個datatable對象即可。

2.用datatable的selectcommand方法

這種方法要比第一種簡單一點,它直接用datatable對象+sqlcommand對象完成將查詢結果放入datatable中。

cmd=new sqlcommand(sql語句,資料庫連接語句)

datatable.selectcommand=cmd,然後返回datatable對象即可。

用這種方法同樣可以實現顯示參數化查詢結果。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.