sql-server – SQL Server中的“CREATE TABLE … LIKE …”相当于什么?

前端之家收集整理的这篇文章主要介绍了sql-server – SQL Server中的“CREATE TABLE … LIKE …”相当于什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用sql Server(我是一个sql Server noob),并尝试更改一个表.我想要CREATE TABLE LIKE来安全地存储数据,而我删除键和约束以及sql Server在原始表格上进行修改时似乎需要的所有其他rigamorole,但是我无法找到与该命令的匹配.

解决方法

你可以做

SELECT * INTO #MyTable_tmp
从MyTable

然后修改MyTable,然后复制你的数据.我看到的其他方法是创建一个新的表,调用Mytable_Tmp(不是临时表),这将是你的新表.

然后复制您的数据进行所需的任何迁移.然后,您将删除原始表,并在Mytable上重命名.

或者您可以获得比较数据库生成差异脚本或VSTS DB Edition(与开发人员配合)的许多优秀工具之一,您可以从项目文件到DB执行diff脚本.

编辑

当您运行SELECT * INTO #MyTable FROM MyTable时,sql Server将创建一个新的临时表,名为#MyTable,它与select子句中的每个列和数据类型相匹配.在这种情况下,我们选择*,所以它将匹配MyTable.这只会创建它不复制默认值,约束索引或其他任何东西的列.

猜你在找的MsSQL相关文章