博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
阻止保存要求重新创建表的更改
阅读量:6942 次
发布时间:2019-06-27

本文共 1245 字,大约阅读时间需要 4 分钟。

  在设计“表”的时候,遇到修改数据类型的场景。可是,当我们把数据类型修改之后,点击“保存”按键,却遇到报错:不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的表进行了更改或者启用了”阻止保存要求重新创建表的更改“选项”。

  为了简化操作,可以去除“阻止保存要求重新创建表的更改”选项。

  实际上,SQL Server在后台生成了一系列的脚本重建了这张表。

/* 为了防止任何可能出现的数据丢失问题,您应该先仔细检查此脚本,然后再在数据库设计器的上下文之外运行此脚本。*/

BEGIN TRANSACTION

SET QUOTED_IDENTIFIER ON

SET ARITHABORT ON

SET NUMERIC_ROUNDABORT OFF

SET CONCAT_NULL_YIELDS_NULL ON

SET ANSI_NULLS ON

SET ANSI_PADDING ON

SET ANSI_WARNINGS ON

COMMIT

BEGIN TRANSACTION

GO

CREATE TABLE dbo.Tmp_UserTable

(

UserID varchar(50) NOT NULL,

UserName nvarchar(10) NOT NULL,

AddressLine1 nvarchar(50) NULL,

AddressLine2 nvarchar(50) NULL

)  ON [PRIMARY]

GO

ALTER TABLE dbo.Tmp_UserTable SET (LOCK_ESCALATION = TABLE)

GO

IF EXISTS(SELECT * FROM dbo.UserTable)

EXEC('INSERT INTO dbo.Tmp_UserTable (UserID, UserName, AddressLine1, AddressLine2)

SELECT CONVERT(varchar(50), UserID), UserName, AddressLine1, AddressLine2 FROM dbo.UserTable WITH (HOLDLOCK TABLOCKX)')

GO

DROP TABLE dbo.UserTable

GO

EXECUTE sp_rename N'dbo.Tmp_UserTable', N'UserTable', 'OBJECT' 

GO

ALTER TABLE dbo.UserTable ADD CONSTRAINT

PK_UserTable PRIMARY KEY CLUSTERED 

(

UserID

) WITH( STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

COMMIT

转载地址:http://iqnnl.baihongyu.com/

你可能感兴趣的文章
Fiori里花瓣的动画效果实现原理
查看>>
PHP添加mcrypt扩展模块
查看>>
samba服务(一)samba的安装
查看>>
jQuery调用WebService ( 同源调用)
查看>>
Photoshop用户必知必会的28个快捷键
查看>>
深入理解MySQL 5.7 GTID系列(三):GTID的生成时机
查看>>
UI坐标变换/转换
查看>>
C++ int & *p; //不能建立指向引用的指针;int *a; int * & p=a; //正确,指针变量的引用...
查看>>
c# 获取当前程序的路径
查看>>
Dijkstra基本思路(感觉和Prim非常类似)
查看>>
Jq-滚动条插件写法(二)
查看>>
Android 中AlterDialog使用
查看>>
移动互联网周刊第二期,不错,推荐给大家
查看>>
网页背景图固定不动,不跟随滚动条滚动
查看>>
网站推广百步曲
查看>>
F# 20分钟快速上手(二)
查看>>
[Android UI] listview 自定义style
查看>>
VS 2015 Enterprise第二大坑
查看>>
Java静态字段(属性、方法、类别)
查看>>
白话学习MVC(六)模型绑定
查看>>