當前位置:首頁 » 編程語言 » sqlplus執行sql腳本報錯退出
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sqlplus執行sql腳本報錯退出

發布時間: 2022-07-18 19:31:02

sqlplus創建存儲過程腳本不生效

創建過程中有語法錯誤。
在存儲體中每條SQL語句都是以分號結尾的,而在SQL控制台中在執行腳本時,一遇到分號就會執行SQL語句,這樣的話若是該條語句並不是正確的執行語句的話,那麼就會報錯。

❷ 失敗原因:執行SQL失敗,失敗原因:批處理中出現錯誤: ORA-00911: invalid character

  1. 應該是錯誤輸入了全形字元,輸入半形字元就行了。

  2. 錯誤信息ORA-00911: invalid character說明了在執行的SQL語句中出現了無效字元,所在SQL語句無法通過語法分析過程導致了錯誤結果。

  3. 可能出現的原因有:錯誤地輸入了全形字元,比如輸入了全形逗號。

  4. 如果使用C++、Java、C#等編程時,總會習慣在語句最後加分號,而這個符號在SQL中是無效字元。

  5. 實際語句和列類型不匹配,比如將數值列賦值為字元串。

  6. 與display函數不同,display_cursor顯示的為真實的執行計劃。

  7. 對於format參數,使用與display函數的各個值,同樣適用於display_cursor函數。

  8. 當statistics_level為all或使用gather_plan_statistics提示可以獲得執行時的統計信息。

  9. 根據真實與預估的統計信息可以初步判斷SQL效率低下的原因,如統計信息的准確性、主要的開銷位於那些步驟等。

  10. 看你的sql語句最後是否有分號,有的話去掉就行 看你Oracle伺服器端字元集是否和Oracle客戶端字元集匹配。

  11. 查詢oracle server端的字元集:SQL>select userenv(『language』) from al。

  12. 查詢oracle client端的字元集。在windows平台下,就是注冊表裡面相應OracleHome的NLS_LANG。

  13. 還可以在dos窗口裡面自己設置,比如: set nls_lang=AMERICAN_AMERICA.ZHS16GBK。

❸ sqlplus 調用腳本 報錯未知命令

加個@或者start
比如:
SQL>@D:\.........
SQL>start D:\....

❹ sqlplus怎麼退出sql腳本

你說的是退出當前會話吧,可以使用exit命令

❺ 如何用sqlplus執行sql腳本,且讓出錯後及時退出sqlplus

你先聯接上sqlplus後,再執行代碼,這樣只要不是sqlplus內部程序錯誤,就不會退出的。

❻ 如何設置sqlplus執行錯誤,不要直接退出

你先聯接上sqlplus後,再執行代碼,這樣只要不是sqlplus內部程序錯誤,就不會退出的。

❼ 批處理腳本中如何退出oracle的sqlplus

看看oracle體系結構和事務吧,當你執行玩一個DML語句結束的時候,數據是沒有立即保存在數據文件中的,而是保存在資料庫高速緩沖區中,所以這時你可以執行sql>roll back;實現數據的回滾,但是如果你希望數據保存在數據文件中就提交事務sql>commit;這時資料庫寫進程就會把資料庫高速緩沖區的臟數據(和磁碟不一致的數據)寫到數據文件中,這時你的資料庫將不能恢復,除非你進行了備份。。退出oracle操作,sql>exit;控制台都是這個退出操作。。。

❽ sqlplus執行sql腳本如何退出sqlplus環境

C:Usersfengjun>sqlplusdexter/xiaojd@[email protected]

SQL*Plus:Release11.2.0.3.0Proctionon星期五2月714:32:042014

Copyright(c)1982,2011,Oracle.Allrightsreserved.

ERROR:
ORA-01017:用戶名/口令無效;登錄被拒絕


請輸入用戶名:^C
C:Usersfengjun>sqlplus-Ldexter/xiaojd@[email protected]

SQL*Plus:Release11.2.0.3.0Proctionon星期五2月714:32:122014

Copyright(c)1982,2011,Oracle.Allrightsreserved.

ERROR:
ORA-01017:用戶名/口令無效;登錄被拒絕


SP2-0751:無法連接Oracle。正在退出SQL*Plus

加個-L 參數就行,詳細解釋:


-L 只嘗試登錄一次, 而不是在出錯時再次提示。

❾ 在shell腳本執行sql語句為什麼會報錯

sql語句要在資料庫中執行才可以,所以要先連接資料庫。
比如如果是oracle那麼首先要sqlplus連接,但是因為sqlplus本身是一個交互的內容,所以要改為非交互的模式,這個需要一些參數。具體什麼參數我忘了,不過確實需要參數才行。
而且shell中的sql腳本也不是直接寫就可以。要寫成塊的狀態,或者調用腳本的狀態才可以的。
大概就是這些,如果sql語句本身沒有錯誤,那麼應該就沒什麼問題了。

❿ sqlplus執行sql文件中begin end後/和exit是什麼意思

退出sqlplus操作環境。
比如你使用win的bat調用sqlplus,就會打開sqlplus操作環境,然後bat會等待sqlplus關閉,然後執行下一條語句,如果sqlplus不退出去,bat就一直在等。所以用sqlplus執行sql文件,文件最後要加exit