【发布时间】:2016-01-06 17:27:52
【问题描述】:
我有一个 SQL Server 表,它位于远程服务器上。我可以使用 SQL Server Management Studio 连接到它,但打开它需要时间,我正在使用 SQL Query 窗口完成我的工作而没有到达它。
最近我对该表的本地副本进行了更改,并且还想更新远程副本。我所做的只是再添加一列Nullable,我想了解如何在不破坏远程数据的情况下使用T-SQL 将这一列添加到远程SQL Server。
以下是附加信息:
Table Name: Products
Columns to be added: LastUpdate, Nullable and varchar(200)
谢谢。
【问题讨论】:
-
为什么
LastUpdate是varchar(200)?听起来像一个日期列。 -
听起来应该不止一列 - 通常好的做法是每条数据一列。
-
我不需要考虑更好的做法。这只是一个临时项目,只需要处理当前任务。
-
如果你经常做糟糕的设计,当它无关紧要时,你最终会在重要的时候做糟糕的设计。 永远不要将多条数据放在一个列中你将永远解析出你的值,只需创建多个列,以正确的方式做到这一点真的很容易,为什么不呢?
-
有时将多条数据放在一个列中可以显着加快和简化您的架构。例如,假设您要存储最后 5 个选定的号码。您可以创建一个表、一个关系并在数据库中存储 5 条记录。或者,您可以存储一个字符串列表 1,2,3,4,5。如果您没有理由对 1,2,3,4,5 进行任何特殊处理,则将其存储为列表。说永远不要将多条数据放在一个列中,但情况并非总是如此。如果需要,您可以随时添加关系表。
标签: sql-server tsql sql-server-2008