PDO中執行SQL語句

2021-07-24 08:59:54 字數 2769 閱讀 1424

exec()方法

exec()方法返回執行後受影響行數,語法如下:

int pdo::exec(string statement)

引數statement是要執行的sql語句。該方法返回執行查詢時受影響的行數,通常情況下用於insert,delete和update語句中。

例如:[php]view plain

copy

$dbms='mysql';//資料庫型別

$dbname='admin';//使用的資料庫

$user='root';//資料庫連線使用者名稱

$pwd='password';//資料庫連線密碼

$host='localhost';//資料庫主機名

$dsn="$dbms:host=$host;port=3306;dbname=$dbname";  

trycatch(exception $e)  

執行結果為:

資料新增成功,受影響行數為: 1 

query()方法

query()方法用於返回執行查詢後的結果集,語法如下

pdostatement pdo::query(string statement)

引數statement 是要執行的sql語句。它返回的是乙個pdostatement物件

例如:[php]view plain

copy

$dbms='mysql';  

$dbname='admin';  

$user='root';  

$pwd='905407339';  

$host='localhost';  

$dsn="$dbms:host=$host;port=3306;dbname=$dbname";  

trycatch(exception $e)  

執行結果為:

pdostatement object ( [querystring] => select * from user ) 

如果要看查詢的具體結果,可以通過foreach語句完成迴圈輸出

例如:[php]view plain

copy

foreach($res

as$val)  

執行結果為:

107lab----e10adc3949ba59abbe56e057f20f883e

admin----123456

說明:如果要檢視foreach的詳細用法請檢視:

query()與exec()

query可以實現所有exec的功能

例如:[php]view plain

copy

$dbms='mysql';//資料庫型別

$dbname='admin';//使用的資料庫

$user='root';//資料庫連線使用者名稱

$pwd='905407339';//資料庫連線密碼

$host='localhost';//資料庫主機名

$dsn="$dbms:host=$host;port=3306;dbname=$dbname";  

trycatch(exception $e)  

執行結果為:

資料新增成功,受影響行數為: 1 

注: 1、query和exec都可以執行所有的sql語句,只是返回值不同而已。

2、query可以實現所有exec的功能。

3、當把select語句應用到 exec 時,總是返回 0

預處理語句----prepare()語句和execute()語句

預處理語句包括prepare()和execute()兩種方法。首先,通過prepare()方法做查詢準備工作,然後通過execute()方法執行查詢,並且還可以通過bindparam()方法來繫結引數給execute()方法,語法如下:

pdostatement pdo::prepare(string statement[,array driver_options])

bool pdostatement::execute([array input_parameters])

例如:在pdo中通過預處理語句prepare()和execute()執行sql查詢語句,並且應用while()語句和fetch()方法完成資料的迴圈輸出

[php]view plain

copy

$dbms='mysql';//資料庫型別

$dbname='admin';//使用的資料庫

$user='root';//資料庫連線使用者名稱

$pwd='905407339';//資料庫連線密碼

$host='localhost';//資料庫主機名

$dsn="$dbms:host=$host;port=3306;dbname=$dbname";  

try  

}catch(exception $e)  

執行結果為:

1 107lab e10adc3949ba59abbe56e057f20f883e

4 admin 123456

5 admin 123456

c 中 執行SQL語句

網上看的 刪除一行資料,雖然下面兩個寫法都能實現,但是都有問題。void c資料庫測試dlg onbnclickeddelbtn cstring str m listctrl.getitemtext index,1 strsql.format t delete from customertype w...

ACCESS中執行sql語句

不會就看圖 access採用sql語句與sql的區別 access中提供查詢物件,在設計時可以採用設計檢視和sql檢視,非常方便,sql檢視中的sql語句可以在sql server中使用,但是否完全可用呢?答案是否定的,表中總結了 microsoft access 和 microsoft sql s...

Java中批量執行sql語句

在我們實際專案開發過程中,可能有的功能在後台需要執行幾條sql語句甚至需要批量的執行一些sql語句,如果是迴圈一條一條執行,我想大家都知道這樣做的效率特別低,尤其是批量sql時,但是如果我們先迴圈把整個的拼成乙個以 分割開的sql,然後執行這樣的效率提高了不少。string idsarray add...