1. 程式人生 > >常用SQL語句引數化+顯示查詢結果

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

常用SQL語句引數化集合:

在不同的SQL語句中使用引數化的方式不盡相同,但一般都是用佔位符,然後用command物件新增引數如來實現,現在把常用的引數化方法列表如下:

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

strSql = "select * from table1 where [email protected] "
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 [email protected] <a href="mailto:[email protected]"">"

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物件即可。

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

相關推薦

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

常用SQL語句引數化集合: 在不同的SQL語句中使用引數化的方式不盡相同,但一般都是用佔位符,然後用command物件新增引數如來實現,現在把常用的引數化方法列表如下: 1.select語句的引數化:

C# sql 語句 引數 思路

--C# Oricle sql in語句 引數化 思路 --DBHelper.GetDataTable in 語句引數化 --思路1 select * from sfc_mo where inv_org

python sql語句引數介面

由於工作需要,今天寫了一個Python小指令碼,其中需要連線MySQL資料庫,在執行sql命令時需要傳遞引數,結果出問題了。在網上查了一下,發現有以下幾種方式傳遞引數:一.直接把sql查詢語句完整寫入字串1 try: 2 connection = MySQLdb.connect(use

巧用java.text.MessageFormat將JDBC的sql語句引數

需求: select id,name from table where id=xxx and name=xxx; 其中, 需要將id,name引數化 解決方案: 方案一: String.format String.format("selec

oracle中sql語句中多個查詢結果的交集、差集和並集

1.交集 intersect運算:返回查詢結果中相同的部分。 SELECT product_id FROM tab1 INTERSECT SELECT product_

解決 JMeter 中 SQL 語句引數的問題

關鍵字:開源效能測試工具  引數化當使用 JMeter 的JDBC 指令碼對資料庫進行測試時,JMeter的JDBC Request中包含的SQL語句時無法使用引數的。例如 SELECT * FROM ${table_name} 是無效的。 如果需要實現同時多個不同的使用者

SQL語句引數__封裝

封裝SQL語句引數化(以下程式碼寫為sqlcanshuhua.py檔案) # encoding=utf-8 from pymysql import * class MysqlHelper: def __init__(self,user,passwd,

如何在MySQL裡構造SQL語句,自動給查詢出來的結果加一列從1開始的序號列

兩種辦法: 第一種:快捷 select (@i:[email protected]+1) as i,a.* from zakk_carinfo_201811 a,(select @i:=0) as it where CI_ThroughTime between "2018-11-2

淺析Sql Server引數查詢

錯誤認識1.不需要防止sql注入的地方無需引數化   引數化查詢就是為了防止SQL注入用的,其它還有什麼用途不知道、也不關心,原則上是能不用引數就不用引數,為啥?多麻煩,我只是做公司內部系統不用擔心SQL注入風險,使用引數化查詢不是給自己找麻煩,簡簡單單拼SQL,萬事OK 錯誤認識2.引數化查詢時是否指定

Oracle常用sql語句(三)之子查詢

子查詢 子查詢要解決的問題,不能一步求解 分為: - 單行子查詢 - 多行子查詢 語法: SELECT select_list FROM table WHERE expr operator (SELECT select_l

SQL顯示查詢結果的前幾條記錄

在使用資料庫查詢語句的過程中,我們經常需要返回查詢結果的前幾條或者中間幾條資料,下面是我總結的幾種資料庫常用的方法:(table是資料庫表名,table2是table表的別名) 1、SQLServer sqlserver支援top關鍵字,返回前若干條資料。select to

常用SQL語句

char password 所有 gen 登錄 刪除表 一個 mysqldump pda --1. 用戶 --登錄 mysql -u用戶名 -p[密碼] --修改密碼 mysqladmin -u用戶名 -p[密碼] pa

oracle 常用sql語句

onu format del 滿足 blank ica end var har 目錄 1)基本 2)數學函數 3)rownum 4)分頁 5)時間處理 6)字符函數 7)to_number 8)聚合函數 9)學生選課 10)圖書館借閱 基本 --新建表: cre

13.4 mysql用戶管理 13.5 常用sql語句 13.6 mysql數據庫備份恢復

13.4 mysql用戶管理 13.5 常用sql語句 13.6 mysql數據庫備份恢復- 13.4 mysql用戶管理 - 13.5 常用sql語句 - 13.6 mysql數據庫備份恢復 - 擴展 - SQL語句教程 http://blog.51cto.com/zt/206 - 什麽是事務?事務的特性

在SqlServer中通過SQL語句實現樹狀查詢

clas all bold join where procedure ner log class 1 CREATE PROCEDURE [dbo].[GetTree] 2 @Id int 3 AS 4 BEGIN 5 with cte as

mysql用戶管理、常用sql語句、mysql數據庫備份恢復

mysql用法mysql用戶管理1、新增用戶user1,並設置密碼為123456mysql> grant all on *.* to ‘user1‘@‘127.0.0.1‘ identified by ‘123456‘;#創建user1用戶並授予其所有權限“*.*”(通配符)#第一個*:表示所有的數據庫

MySQL常用SQL語句

create eight sele 操作 表結構 結構 employ ase truncate 1、對庫的操作 1 mysql> show databases; #查看所有的庫 2 mysql> select database();

Oracle數據庫,常用SQL語句匯總

sql oracl -s 使用率 style pac alter _id 查詢 --查看表空間名稱、數據文件的路徑、大小、及使用率select b.tablespace_name "表空間名稱", b.file_name "數據文件路徑",

oracle dataguard常用sql語句

dataguardselect log_mode,open_mode ,database_role from v$database; --查看dataguard主備庫狀態 select status from v$instance; --查看數據庫狀態 alter database recover manag

封裝sql語句中in限制查詢個數的方法

sel rim () each tar blog and style months /* * 此方法用於每天淩晨取前一天的回滾用戶賬號 */ public function getRollBackAccount($startTime