sql太長
⑴ sql查詢語句太長,超過128
存儲過程處理吧。
存儲過程的優點:
因為存儲過程是T-sql語句的批處理,再加上存儲過程是預編譯的,再次執行此存儲過程的時候就不需要編譯了,速度方面也大大的提升了.
直接用一條查詢語句的話那每次執行的話,都需要編譯一次,並且加大了網路流量,還有一點,就是查詢條件變了還需改動VB源代碼,還不如存儲過程直接修改SQL語句就OK了。
還有一個就是解決了編程軟體的字元長度的限制。
實現代碼:
create proc procname
as
begin
select (你需要的查詢語句)
end
VB源的執行: exec procname
⑵ sql存儲過程耗時太長
多長都有可能,40是很正常的。
1.盡量優化語句,盡量少用游標。
2.修改較為常用的表要注意,最好先在臨時表中作好運算和其它處理,最後在修改這些表,以免較慢的存儲過程長時間鎖定表記錄,影響數據正常使用。
3.將連接超時和命令超時適當擴大,以免超時錯誤。
⑶ sql語句太長,能否拆開執行
簡單的回答,到目前為止,沒有能支持SQL語句拼接的資料庫管理軟體,也應該沒這個必要。
下面是一些常識,有耐心可以看一下。
1、原則上,MS SQL SERVER對SQL條件語句的長度不作限制,起碼當前沒有人有實際的單條語句沒法執行完成的報道,應該幾千個字元以內的單條SQL語句都能正常的在MS SQL附帶的「SQL Server Management Studio」或「企業管理器」中執行,要不,你試試,也許你就是第一個發現問題的人。
2、如果是編程,使用某些編程軟體向SQL Server發送SQL語句的話,受限於編程環境下,字元串的長度或別的因素,可能會有某些不同,如果是那樣的話,最常見的做法是將多條SQL語句做成存儲過程,放在SQL Server資料庫中,程序只需要發送初始條件進行存儲過程的調用即可。
3、也就是說,復雜的SQL語句,絕大多數專業工程人員一般都不會用通過客戶端直接發向SQL 伺服器的方式去執行。如果只是臨時的要進行一些SQL資料庫的操作,也可以直接在SQL相應的管理工具中做。
⑷ SQL提取的一條記錄太長,而頁面只想顯示10個字,其餘的想用省略號顯示,怎麼辦
可以在SQL語句中加入substring函數,只取前面10個字。
如果在aps中,vb腳本里可以用left(mystring, 10)取出前面10個字元。