When
writing T-SQL code, you often need a table in which to store data
temporarily when it comes time to execute that code. You have four
table options: normal tables, local temporary tables, global
temporary tables and table variables. I'll discuss the differences
between using temporary tables in SQL Server versus table variables.
Each of the four table options has its own purpose and use, and each
has its benefits and issues:
•Normal
tables are exactly that, physical tables defined in your database.
•Local
temporary tables are temporary tables that are available only to the
session that created them. These tables are automatically destroyed
at the termination of the procedure or session that created them.
•Global
temporary tables are temporary tables that are available to all
sessions and all users. They are dropped automatically when the last
session using the temporary table has completed. Both local temporary
tables and global temporary tables are physical tables created within
the tempdb database.
•Table
variables are stored within memory but are laid out like a table.
Table variables are partially stored on disk and partially stored in
memory. It's a common misconception that table variables are stored
only in memory. Because they are partially stored in memory, the
access time for a table variable can be faster than the time it takes
to access a temporary table.
No comments:
Post a Comment