當前位置:首頁 » 編程語言 » 為什麼經常有個sql不返回
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

為什麼經常有個sql不返回

發布時間: 2023-05-22 05:02:46

① vb中sql的like語句,運行時沒有報錯,可是結果返回的總為空(資料庫已經連接上了),求大神詳解!

檢查一下你日期的格式對不對。比如是不是液漏yyyy-m-d的格式還是yyyy-mm-dd還是yyyy/mm/dd還是yyyy/m/d的格式。試著不用變數,先寫個行枝常鬧帶爛量看看能不能查詢出結果。

② sql 查詢問題!返回值為什麼總是為0

object x = (object)odcmd.ExecuteScalar();
這句話查詢ExecuteScalar()返回的是第一行的第一列的數據影響說,如果沒有,則返回的是0,有則返回的是1.
你把這件改成
int x=odcmd.ExecuteNonQuery();就OK了

③ 用sql查詢某個欄位為空時,用「 IS NULL」,為何查不出結果

因為一般情況下將任何值(包括NULL本身)與NULL做比較的時候,都會返回UnKnown。

而在查詢表達式中(比如where與having中),UnKnown會視為false。所以select*from表where欄位=null查不到正確的結果。

在sql中要查詢某列值為null的所有結果集時,查詢條件應該這樣寫:select*from表where欄位isnull。


(3)為什麼經常有個sql不返回擴展閱讀:


注意事項

並不是在所有場情下UnKnown都會視為false來處理,在check約束中,UnKnown就會視為true來處理。這就是為什麼設置某個欄位的值必須大於等於0的情況下,還可以往該欄位中插入Null值;

那是因為在check約束中null>=0的邏輯結果UnKnown會被當作true來處理。需要注意的是,在分組子句與排序子句中,sql視null是相等的,即:

1、GROUPBY會把所有NULL值分到一組。

2、ORDERBY會把所有NULL值排列在一起。

結構化查詢語言包含6個部分:

1、數據查詢語言(DQL:Data Query Language):其語句,也稱為「數據檢索語句」,用以從表中獲得數據,確定數據怎樣在應用程序給出;

保留字SELECT是DQL(也是所有SQL)用得最多的動詞,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。這些DQL保留字常與其它類型的SQL語句一起使用。

2、數據操作語言(DML:Data Manipulation Language):其語句包括動詞INSERT、UPDATE和DELETE。它們分別用於添加、修改和刪除。

3、事務控制語言(TCL):它的語句能確保被DML語句影響的表的所有行及時得以更新。包括COMMIT(提交)命令、SAVEPOINT(保存點)命令、ROLLBACK(回滾)命令。

4、數據控制語言(DCL):它的語句通過GRANT或REVOKE實現許可權控制,確定單個用戶和用戶組對資料庫對象的訪問。某些RDBMS可用GRANT或REVOKE控制對表單個列的訪問。

5、數據定義語言(DDL):其語句包括動詞CREATE,ALTER和DROP。在資料庫中創建新表或修改、刪除表(CREAT TABLE 或 DROP TABLE);為表加入索引等。

6、指針控制語言(CCL):它的語句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用於對一個或多個表單獨行的操作。

④ 請高手幫我看看在sql下,為什麼輸入select from al 不返回值,只是轉到下一行了

oracle命令行以「;」結尾 ,命令才會提交到伺服器。也就是commit

⑤ 為什麼sql語句沒有執行成功。方法在另一個文件里,在Main里調用

executeQuery是專門用於執行sql查詢的方法,從你的sql來開不是查詢,而是執行的見表和插入語句,這種操作應該使用executeUpdate方法,同時不要把見表語句和insert語句拼成一個整個的語句去執行,這種方式在資料庫直接執行ok沒問題,但通過代碼走api調用是會出問題的,請使用sql批量執行
用PreparedStatement提供的addBatch()方法吧你要執行的sql一條條添加到
批處理
中,然後整個批量executeUpdate
此時executeUpdate返回的是int類型的數據,是當前sql執行之後影響到的
資料庫數據
條數

⑥ java sql select 語句得到的結果為什麼總是無。。

哥們 你方法用錯啦 api原話殲遲顫。

getRow
int getRow()
throws SQLException檢索當前行編號。第一行為 1 號氏敗,第二行為 2 號,依此類推。

返回:
當前行的編號;如果不存在當前行,則返回 0
拋出:
SQLException - 如果發生資料庫訪問錯誤
從以下版本開始旦緩:
1.2

⑦ 為啥sql資料庫總是運行一段時間意外停止

情況說明:
1、出現此現象時,資料庫是正常的(做過一個實驗:新建了一個網站,程序與運行網站相
同,連接的資料庫也與運行網站連接的資料庫相同。當運行網站出現連不上資料庫現象時,
運行這個新網站,結果正常);
2、出現此現象時,IIS也是正常的,因為網站其他不調用資料庫的頁面是可以打開的。
3、當出現此現象時,查看資料庫里的連接,只有2到3個連接。
4、網站伺服器和資料庫伺服器放在同一台機器上。
5、與伺服器同在一個區域網中的其他PC機,不能通過域名來訪問該伺服器上的網站,只能
通過輸入內部IP來訪問。區域網中的PC可以訪問INTERNET上的其他網站。
6、伺服器使用的網卡只分配一個內部IP,同時綁定了一個外部IP.
7、曾經伺服器託管在IDC那裡,運行半年正常,後來把伺服器移到了自建的機房裡,運行2
個多月後出現這個問題,之後就不斷地出現此問題。
8、採用.NET/C#開發,並且程序中使用了關閉連接的命令。

⑧ sql高手請進,有個命令顯示執行成功但不顯示結果,請問原因。

樓主你這樣寫語句,看得人特辛苦。
你看我整理一下的,多簡潔

SELECT a.注冊號, a.企業名稱, a.地址, a.法定代表人, a.經營范圍, a.聯系電話, a.法人證件號碼, a.新身份證號, b.序號, b.姓名,b.新身份證號
FROM
(源_前郭縣個體工商戶信息名單$ AS a INNER JOIN 源_建設部門低收入$ AS b ON a.新身份證號=b.新改隱身份證號)
WHERE a.新身份證號 =b.新身份證號

inner join 只要在這兩個表的公共欄位之中有相符值,內部聯接將組合兩個表中的記錄。

所以你既然已經用了 inner join on ON a.新身份證號=b.新身份證號
就不需要再在後面用 WHERE a.新身份證號 =b.新身份證號 這個句子啦

你試試刪掉where 後的句子

SELECT a.注冊號, a.企業名稱, a.地址, a.法定代表人, a.經營范圍, a.聯系電話核態廳, a.法人證件號碼, a.新身份證號, b.序號, b.姓名,b.新身份證號
FROM
(源_前郭縣個體工商戶信息名單$ AS a INNER JOIN 源_建設部門低收入$ AS b ON a.新身份證號=b.新身份證號)

希望對你有所幫助,也可以共同探討,有事網路閉侍 HI :)

⑨ 最近公司的sql伺服器總自動關掉.不知道為什麼

SQL服務自動停止的原因很多,我單位的也遇到過。
1、檢查C盤剩餘空間悉旁,是否太少
2、檢查資料庫的日誌文件和資料庫文件是否超出限睜棗橡制
3、查看你的網路設置,是否有程序對你的默認SQL埠進行修改或其他的操作
4、要保證你的SQL打上了最新補丁,岩則這種可能是別人攻擊你得SQL伺服器
其他原因很多,你可以查看你伺服器的SQL日誌,見招拆招。

⑩ 我的web項目使用hibernate框架,執行一條sql語句查詢,但獲取的結果卻總是0,從PL/SQL中執行有結果

您說的不是很詳細:

1.首先是執行後返回0,程序本身有沒有報錯;
2.sql語句在分行時前後有沒有加進去空格;
3.執行的sql返回的是欄位還是對友汪象?如果是對象纖告畢的話,sql對象欄位有沒有對應好;
4.如果返回的是對象建議用hql試試;
5.如果返回只是欄位,接受值的類型有沒有問題?

這只是我日常處理問題的檢查辦法毀芹,希望對你有用。