當前位置:首頁 » 操作系統 » 資料庫返回語句

資料庫返回語句

發布時間: 2022-07-18 07:35:05

資料庫update語句的返回值是什麼

更新成功返回受影響語句的id,失敗返回false。

② 資料庫語句返回記錄不唯一,會出現什麼現象

返回數據不唯一,就把符合sql語句條件的所有項都列出來。
查詢語句不會只用於精確定位查找,還會有泛查找,比如符合每個條件的許多人,例如都是20歲的,或者都大於多少小於多少等等。
你問這個問題,表示你對SQL語句很不熟悉,只要你的語句是對的,你的資料庫不要太龐大(如果你查詢的范圍太廣,會耗費非常大的資源),就OK

③ 資料庫中常用的sql語句有哪些

1.檢索數據
SELECT prod_nameFROM Procts;
#檢索單列

SELECT prod_id, prod_name, prod_priceFROMProcts;
#檢索多列

SELECT * FROM Procts;
#檢索所有列

SELECT DISTINCTvend_id FROMProcts;
#檢索不同的值

SELECTprod_name FROM Procts LIMIT 5;
#返回不超過5行數據

SELECTprod_name FROM Procts LIMIT 5 OFFSET 5;
#返回從第5行起的5行數據。LIMIT指定返回的行數,LIMIT帶的OFFSET指定從哪兒開始。
2.排序檢索數據
SELECTprod_name
FROMProcts
ORDER BYprod_name;
#排序數據

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_price, prod_name;
#按多個列排序

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY 2, 3;
#按列位置排序,第三行表示先按prod_price, 再按prod_name進行排序

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_priceDESC, prod_name;
#prod_price列以降序排序,而prod_name列(在每個價格內)仍然按標準的升序排序

3.過濾數據
SELECT prod_name, prod_price
FROMProcts
WHERE prod_price< 10;
#檢查單個值

SELECT prod_name, prod_price
FROMProcts
WHERE vend_id <> 『DLL01』;
#不匹配檢查

SELECT prod_name, prod_price
FROMProcts
WHERE prod_priceBETWEEN 5 AND 10;
#范圍值檢查

SELECT cust_name
FROMCUSTOMERS
WHERE cust_emailIS NULL;
#空值檢查

4.高級數據過濾
SELECTprod_id, prod_price, prod_name
FROMProcts
WHERE vend_id = 『DLL01』ANDprod_price <= 4;
#AND操作符

SELECTprod_name, prod_price
FROMProcts
WHEREvend_id=』DLL01』 OR vend_id=』BRS01』;
#OR操作符

SELECTprod_name, prod_price
FROMProcts
WHERE (vend_id = 』DLL01』ORvend_id=』BRS01』)
ANDprod_price >= 10;
#求值順序 AND的優先順序高於OR

SELECTprod_name, prod_price
FROMProcts
WHERE vend_idIN (『DLL01』,』BRS01』)
ORDER BY prod_name;
#IN操作符

SELECT prod_name
FROMProcts
WHERE NOTvend_id = 『DLL01』
ORDER BY prod_name;
#NOT 操作符

SELECT prod_name
FROMProcts
WHEREvend_id <> 『DLL01』
ORDER BY prod_name;
#NOT 操作符

④ 常見的幾個資料庫insert into操作的主鍵返回值

插入一條記錄時,我們很多時候都想馬當前插入的主鍵返回出來.作為另一個操作的條件.如果主鍵是
自動生成的(大多數時候是這樣),那麼取回主鍵是一種比較困難的事.可能對於一些特殊的資料庫必須把
insert into和select max(key)或什麼序列當前值作為一個事務的原子來操作,但很多資料庫(以及資料庫操作環境)
並不能為你提供事務並發控制.所以如果多人同時操作,那麼select max(key)很可能就不是你剛才insert的
那條記錄.

在JDBC3.0中,已經可以直接返回insert 語句的主KEY和其它值,但目前只有mysql支持.oracl和sqlserver
的JDBC都不支持這個特性.而且如果離開java平台就沒有這個特性了.

詳細讀了oacle,sqlserver,mysql的文檔,對上面三種資料庫找到了以下解決方案,在java和非java平台都適用:

SQLServer:

INSERT INTO tableName (fieldList ...) values (valueList ...) SELECT @@IDENTITY AS aliasName;

這一句相當於執行查詢操作,從結果集中getXXX(aliasName);就可以獲取.

Oracle:

INSERT INTO tableName (fieldList ...) values (valueList ...) RETURNING [primaryKey INTO]:aliasName;

同上的方法可以獲取.這兩種方法都是資料庫支持的sql語句,原以根本不存在並發沖突.

mysql:
沒有找到可以絕對保證原子性的語句(誰知道反饋一下)

如果是在JAVA平台,可以直接利用 Statement的返回鍵特性.比較安全,在非java平台上,目前只能通過在同一會話中用
LAST_INSERT_ID([columnName])來獲取,注意一定要在同一會話中.

⑤ 資料庫自定義函數,判斷參數,生成不同的sql語句,返回數據

Return被定義為返回int.
當SType=21 @aaa存的是sql語句, 當然報錯
當SType=22@aaa存的sql執行結果, Stock_id

php操作oracle資料庫,如果返回select語句返回的行數

SELECT 語句用於從資料庫中選取數據。
語句1:SELECT * FROM table_name
解說:意思就是讀取整個表table_name裡面的數據顯示出來
語句1:SELECT * FROM table_name Where x = 1
解說:意思就是讀取表table_name裡面鍵名為:x 值為:1的 數據顯示出來
例子:
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("my_db", $con);
$result = mysql_query("SELECT * FROM Persons");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "<br />";
}
mysql_close($con);
?>

資料庫採用UTF8編碼,而頁面申明編碼是GB2312,這是最常見的產生亂碼的原因。
這時候在PHP腳本裡面直接SELECT數據出來的就是亂碼,需要在查詢前先使用:
mysql_query("SET NAMES GBK");或mysql_query("SET NAMES GB2312");

來設定MYSQL連接編碼,保證頁面申明編碼與這里設定的連接編碼一致(GBK是GB2312的擴展)。如果頁面是UTF-8編碼的話,可以用:
mysql_query("SET NAMES UTF8"); 注意是UTF8而不是一般用的UTF-8。假如頁面申明的編碼與資料庫內部編碼一致可以不設定連接編碼。
代碼如下:
$mysql_mylink = mysql_connect($mysql_host, $mysql_user, $mysql_pass);
mysql_query("SET NAMES 'GBK'");

⑦ sql語句問題,如何從資料庫中返回滿足一定條件的表名,比如要返回以下劃線開頭的表名稱,sql語句怎麼寫

oracle 資料庫 ,返回A開頭的表名稱
select table_name from user_tables where table_name like 'A%'

⑧ 資料庫查詢的返回值問題

可以使用resultset.next()來判斷是否查詢到相應結果。resultset.next()的返回值是true或false,如果有結果返回true,沒有結果則返回false
使用方法
if(resultset.next()){
執行相關語句...
}

⑨ 資料庫函數如何返回一個值

一.
實現結果:在一個資料庫中某個用戶下編寫一個存儲過程,在存儲過程中使用dblink連接另一個資料庫,從此資料庫中的一個用戶下取數,然後插入當前的資料庫中的一個表中。
二.
實現方法步驟:
1.
創建存儲過程
2.
在存儲過程中先創建database
link
3.
創建成功
4.
從另一個資料庫取出數據插入到當前資料庫中
5.
任務完成
三.
創建dblink的方法:
1.
create
public
database
link
dblink
connect
to
totalplant
identified
by
totalplant
using
'(description
=
(address_list
=
(address
=
(protocol
=
tcp)(host
=
localhost)(port
=
1521))
)
(connect_data
=
(service_name
=
prd.gdc)
)
)';
語法解釋:create
public
database
link
dblink名字(自己隨便起)
connect
to
用戶名
identified
by
密碼
using
'(description
=
(address_list
=
(address
=
(protocol
=
tcp)(host
=
要連接的資料庫所在伺服器的ip地址)(port
=
1521))
)
(connect_data
=
(service_name
=
要連接的資料庫的在本地的服務名(即要連接的資料庫的sid))
)
)';
2.
如果創建private的dblink
create
database
link
dblink
connect
to
totalplant
identified
by
totalplant
using
'(description
=
(address_list
=
(address
=
(protocol
=
tcp)(host
=
localhost)(port
=
1521))
)
(connect_data
=
(service_name
=
prd.gdc)
)
)';

⑩ 請教PHP資料庫返回問題

觀察了一下,應該是yii框架做的資料庫操作。這里應該是保存數據,如果數據沒發生變化,那麼保存的數據結果不應該直接判斷是true。應該採用!==false來判斷。這個就是添加數據和修改數據的不同之處。這個文檔里應該有說明,或者下次遇到這種問題,你可以查看下源碼,看下模型保存的時候,是怎樣返回的結果。如果是添加的話,就不會有這個問題,添加成功,返回的一定高杠桿true.而修改數據,不一定是返回true。

熱點內容
如何做一個文件壓縮包 發布:2025-01-21 10:17:45 瀏覽:184
壓縮草坐墊 發布:2025-01-21 10:01:33 瀏覽:399
編譯選項g 發布:2025-01-21 09:59:23 瀏覽:534
谷歌平板電腦無法登陸伺服器 發布:2025-01-21 09:43:55 瀏覽:108
刀劍亂舞腳本ios 發布:2025-01-21 09:41:06 瀏覽:521
2編程 發布:2025-01-21 09:36:50 瀏覽:776
把我的世界的ice伺服器炸了 發布:2025-01-21 09:31:01 瀏覽:681
sql資料庫導入數據 發布:2025-01-21 09:25:21 瀏覽:420
zynqsdk修改編譯選項 發布:2025-01-21 09:22:30 瀏覽:875
存儲器部件教學實驗 發布:2025-01-21 09:14:06 瀏覽:179