SQL Server 2000 - 如何将列从 text 更改为 ntext?
我正在尝试执行 ALTER TABLE Signatures ALTER COLUMN HTML ntext;
但我收到 Cannot alter columns 'HTML' because it is 'text'.
我该怎么办关于改变列?
I'm trying to do a ALTER TABLE Signatures ALTER COLUMN HTML ntext;
but I get a Cannot alter column 'HTML' because it is 'text'.
How do I go about altering the column?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
你可以分两步完成:
you can do it in two steps:
或者您可以将 HTML 重命名为 HTMLOld,然后创建一个名为 ntext 的新 HTML 列。然后使用旧 HTML 中的数据更新新列,然后删除 HTMLOld 列。
(顺便说一下,当您离开 SQL Server 2000 时,您需要开始删除这些 text 和 ntext 列,因为它们已被弃用,并且在下一版本的 SQL Server 中将不再可用。)
Or you could rename HTML to HTMLOld and then create a new column HTML that is ntext. Then update the new column with the data from HTML old, then drop the HTMLOld column.
(Incidentally when you move away from SQL Server 2000, you need to start getting rid of these text and ntext columns as they are deprecated and will not be available in the next version of SQL Server.)
1) 在表上创建一个数据类型为 ntext 的新列
2) 运行更新语句以从 html 复制到新的 ntext 列
3)删除你的html列
4)将新列重命名为 html (如果需要)
1) Create a new column of data type ntext on your table
2) Run an update statement to copy from html to your new ntext column
3) Drop your html column
4) Rename your new column to html (if need be)
你不能。您需要创建一个新表(包括权限、触发器等),复制数据,并删除旧表。
You can't. You need to create a new table (including permissions, triggers, etc.), copy the data, and drop the old table.