『壹』 ora-00911(PLsql運行沒問題),但是在VS(ASP.NET[C#])中使用sqldatasource報錯。
請檢查一下是不是日期轉換格式不兼容,直接讓系統進行日期轉換。
select
min(datetime_)
as
開始日期,max(datetime_)
as
結束日期,t.bsc,sum(num5)
as
達標次數,sum(num)
as
總次數,sum(num5)/sum(num)
as
達標比例
from
SZDO.TBL_SINR_FREQ
t
where
datetime_
between
'2013-03-03'
and
'2013-03-03'
group
by
t.bsc
order
by
達標比例
desc
『貳』 失敗原因:執行SQL失敗,失敗原因:批處理中出現錯誤: ORA-00911: invalid character
應該是錯誤輸入了全形字元,輸入半形字元就行了。
錯誤信息ORA-00911: invalid character說明了在執行的SQL語句中出現了無效字元,所在SQL語句無法通過語法分析過程導致了錯誤結果。
可能出現的原因有:錯誤地輸入了全形字元,比如輸入了全形逗號。
如果使用C++、Java、C#等編程時,總會習慣在語句最後加分號,而這個符號在SQL中是無效字元。
實際語句和列類型不匹配,比如將數值列賦值為字元串。
與display函數不同,display_cursor顯示的為真實的執行計劃。
對於format參數,使用與display函數的各個值,同樣適用於display_cursor函數。
當statistics_level為all或使用gather_plan_statistics提示可以獲得執行時的統計信息。
根據真實與預估的統計信息可以初步判斷SQL效率低下的原因,如統計信息的准確性、主要的開銷位於那些步驟等。
看你的sql語句最後是否有分號,有的話去掉就行 看你Oracle伺服器端字元集是否和Oracle客戶端字元集匹配。
查詢oracle server端的字元集:SQL>select userenv(『language』) from al。
查詢oracle client端的字元集。在windows平台下,就是注冊表裡面相應OracleHome的NLS_LANG。
還可以在dos窗口裡面自己設置,比如: set nls_lang=AMERICAN_AMERICA.ZHS16GBK。