DECLARE TABLE和CREATE TABLE有什么区别?

时间:2014-02-05 21:08:57

标签: sql-server tsql

我需要将给定的T-SQL语句翻译成另一种语言。这些T-SQL语句使用DECLARE TABLEDECLARE TABLECREATE TABLE之间的区别是什么?

例如,以下两行之间有什么区别?

declare @t table (account_id varchar(512), num_events int);
Create table t {account_id varchar(512), num_events int}

2 个答案:

答案 0 :(得分:9)

DECLARE TABLECREATE TABLE之间的唯一区别是:

  • DECLARE TABLE:您将动态创建一个表,稍后在查询中使用该表,而不是物理存储它。

  • CREATE TABLE:您将在数据库中物理创建一个表。

答案 1 :(得分:2)

不同之处在于“声明表”将是表级变量。

“create table”将在数据库中创建一个表。