luc*_*ian 15 sql database-design ssms rename sql-server-ce
我在重命名SQL Server Compact Edition中的列时遇到问题.我知道您可以使用重命名表sp_rename
,但这不适用于列.
我已经寻找替代方案,但还没找到.
我可以删除列,然后在特定列之后添加新列吗?如果我删除列并在指定的列之后添加它,数据会丢失吗?
看来,一旦你创建了表,它就无法正确修改 - 这是SQLCE的另一个限制吗?
Rob*_*obb 14
确实,SQL CE似乎不允许更改列名.
您正在创建一个新列并删除旧列.
如果只添加一列并删除旧列,则会丢失数据,因此您需要发出更新语句以将数据从旧数据移至新数据.
有点像
alter Table [dbo].[yourTable] add [newColumn]
update yourTable set newColumn = oldColumn
alter Table [dbo].[yourTable] drop column [oldColumn]
Run Code Online (Sandbox Code Playgroud)
应创建新列,将数据从旧复制到新,然后删除旧列.
希望能帮助到你!
sp_rename 也适用于列:
EXEC sp_rename
objname = '< Table Name.Old Column Name >',
@newname = '<New Column Name>',
@objtype = 'COLUMN'
Run Code Online (Sandbox Code Playgroud)
例子:
SP_RENAME 'MyTable.[MyOldColumnName]' , '[MyNewColumnName]', 'COLUMN'
Run Code Online (Sandbox Code Playgroud)
更新:实际上,sp_rename 过程在 SQL CE 中不可用!您可以在http://www.bigresource.com/Tracker/Track-ms_sql-4Tvoiom3/找到解决方案
归档时间: |
|
查看次数: |
13146 次 |
最近记录: |