我需要制作一个临时表(TAB_PROV
)。这个表将在一个主表(TAB_MAIN
)中有它的起源。我需要主表中的所有内容,除了数据(行)。
我搜索了一些例子,但没有一个适合我
CREATE TABLE TAB_PROV LIKE TAB_MAIN
CREATE TABLE TAB_PROV AS TAB_MAIN
你可以这样做:
SELECT *
FROM TAB_MAIN
INTO TAB_PROV
WHERE 1 = 2
由于WHERE
条件永远不会为真,因此不会复制任何数据-除了表结构已复制—已创建TAB_PROV
并具有与TAB_MAIN
相同的列。NOT但是,复制任何约束(检查约束或默认约束)或触发器-只复制重新创建列(及其数据类型)。
如果你想要一个真实的并完成"文案";,那么应该使用"脚本表"。函数来获取TAB_MAIN
所需的SQL,然后根据它来创建TAB_PROV
。
在SQL Server Management Studio中,您可以右键单击表并选择
Script Table as -> Create To -> New Query Editor Window
这将为您创建表创建脚本。
你也可以试试下面的代码,但它会复制所有内容。
SELECT *
INTO NewTable
FROM OldTable
TRUNCATE TABLE NewTable