名站网址导航为大家提供关于数据库教程相关的教程网站知识。
因此计划先把数据转插入一个临时表,再对临时表的数据进行分析。OBJECTPROPERTY与sp_rename更改对象名称的介绍
相关的OBJECTPROPERTY可参考:,开发过程中,错误免不了。为了纠正错误与规范化。可以使用MS SQL Server的系统存储过程sp_rename与OBJECTPROPERTY来更改重命名。 实例一,更改表名:,复制具体相关代码 具体相关代码如下:,IF EXISTS(SELECT TOP 1 1 FROM dbo.sysobjects WhERE id = object_id(N'[dbo].[Employee]') AND OBJECTPRO,复制具体相关代码 具体相关代码如下:,EXECUTE sp_rename 'Member.[EmployeeName]', 'Name', 'COLUMN',复制具体相关代码 具体相关代码如下:,IF EXISTS(SELECT TOP 1 1 FROM sysobjects WhERE id = OBJECT_ID(N'[PK__Employee__B00879C509746778]') A,复制具体相关代码 具体相关代码如下:,IF EXISTS(SELECT TOP 1 1 FROM sysobjects WhERE id = OBJECT_ID(N'[usp_Employee_Import]') AND OBJECTPR,
问题点是如何动态创建临时表。原先Insus.NET使用下面具体相关代码实现:
复制具体相关代码 具体相关代码如下:
DECLARE @s NVARChAR(MAX) = '
IF OBJECT_ID(''[dbo].[#Tb]'') IS NOT NULL
DROP TABLE [dbo].[#Tb]
CREATE TABLE [dbo].[#Tb]
(
[xxx] INT,
[xxx] NVARChAR(50),
' [dbo].[Column]() '
)'
EXECUTE(@s)
上面具体相关代码中,有一个函数[dbo].[Column]() 是取得一系列动态字段。
其实,上面的具体相关代码一点问题也没有,是能正确动态创建一个临时表,但是接下来具体相关代码,咱们无法再使用这个临时表[dbo].[#Tb] ,因为run第10行具体相关代码EXECUTE(@s)这动作之后,进程已经结束了。这样说法,动态创建出来的临时表,也没有什么意义了。
为了解决这个问题,Insus.NET想到了一个具体相关方法,算是能解决这个问题。既能动态创建,又能在创建之后,能继续使用这个临时表。
复制具体相关代码 具体相关代码如下:
IF OBJECT_ID('[dbo].[#Tb]') IS NOT NULL
DROP TABLE [dbo].[#Tb]
CREATE TABLE [dbo].[#Tb]
(
[xxx] INT,
[xxx] NVARChAR(50)
)
DECLARE @tb NVARChAR(MAX) = 'ALTER TABLE [dbo].[#Tb] ADD ' [dbo].[Column]()
EXECUTE(@tb)
只要细心看了一下,就是可以知道,可以先按正常创建这个临时表,再动态修改这个临时表的字段。这样做之后,程序run完第10行具体相关代码之后,就能再继续使用这个临时表,如:
SELECT * FROM [dbo].[#Tb] 关于数据库教程相关的教程网站知识今天我们就说到这里了,希望可以帮到大家。