[SQL ] 宣告長度的用意

看板Database (資料庫)作者 (阿風~~)時間4年前 (2020/05/22 14:42), 編輯推噓2(205)
留言7則, 5人參與, 4年前最新討論串1/1
資料庫名稱:MS-SQL 資料庫版本:2017 內容/問題描述: 每次在寫SP時,都會在前面宣告變數,例如 DECLARE @AAA varchar(20),但我們 先不管資料欄位開多大,為什麼要宣告長度,而不直接宣告 Declare @AAA varchar(MAX) 就好了。因為只是變數。想問,宣告變數時,指定長度的用意是? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.183.247.253 (泰國) ※ 文章網址: https://www.ptt.cc/bbs/Database/M.1590129750.A.BC6.html

05/22 19:57, 4年前 , 1F
可以對資料有基本理解吧,都用varchar max,不知道字串大概
05/22 19:57, 1F

05/22 19:57, 4年前 , 2F
多長
05/22 19:57, 2F

05/22 20:14, 4年前 , 3F
資料結構、演算法
05/22 20:14, 3F

05/23 21:57, 4年前 , 4F
宣告了才能開出儲存空間
05/23 21:57, 4F

05/24 16:14, 4年前 , 5F
比較大量資料會有速度空間的問題 會有效能的問題
05/24 16:14, 5F

06/23 06:33, 4年前 , 6F
資料只有幾千或幾萬筆時,不會有甚麼差別。頂多多等幾秒
06/23 06:33, 6F

06/23 06:34, 4年前 , 7F
當資料有幾千萬或幾億筆時,可能就會等很久或跑不動。
06/23 06:34, 7F
文章代碼(AID): #1UntHMl6 (Database)
文章代碼(AID): #1UntHMl6 (Database)