国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

小記sql server臨時表與表變量的區別

2024-08-31 00:54:01
字體:
來源:轉載
供稿:網友
小記sql server臨時表與表變量的區別

臨時表與表變量都可以起到“臨時”的作用,那么兩者主要的區別是什么呢?

這里不討論創建方式,以及全局臨時表、會話臨時表這些,主要記錄一下個人對兩者的主要區別以及適用情況的看法,有什么不對或補充的地方,歡迎討論。

區別:

1. 表變量存儲在內存中,當創建表變量時,sql server不會產生日志,也不會維護統計信息;表變量的字段不能建立索引;不能有約束和默認值。sql server 認為表變量通常只有很少量的數據。

2. 當創建臨時表時,sql server會產生日志,統計信息;臨時表的字段可以建立索引,所以它可以存儲相對較多的數據;可以有約束和默認值,并且有鎖機制。可以說臨時表與實際的表幾乎是一樣的,只不過它是輕量和臨時的,可以在想要的時候創建和銷毀。

適用情況:

表變量: 如果是很少量數據,那么就用表變量。使用表變量的開銷要小于臨時表。實際項目用到的地方,例如批量刪除,需要傳遞多個id 作為參數,有的人會拼接id字符串,然后在數據庫去解析;我的做法通常是傳遞xml,然后用xml生成表變量,然后鏈接表刪除。

臨時表:有多張表鏈接查詢得到一個小結果集,該結果集需要在本次會話或多個會話里多次使用。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吴桥县| 无棣县| 固阳县| 福泉市| 奉新县| 邳州市| 车险| 都安| 武夷山市| 德令哈市| 翼城县| 大安市| 黎城县| 吉木萨尔县| 原阳县| 湟源县| 遂宁市| 石狮市| 静宁县| 灌阳县| 凌海市| 秦皇岛市| 苗栗市| 铁力市| 喀什市| SHOW| 加查县| 昌黎县| 大冶市| 万宁市| 夹江县| 黄梅县| 上高县| 永和县| 连州市| 和林格尔县| 林周县| 古交市| 宣武区| 水富县| 台中县|