相关的OBJECTPROPERTY可参考:http://msdn.microsoft.com/en-us/library/ms176105.aspx
开发过程中,错误免不了。为了纠正错误与规范化。可以使用MS SQL Server的系统存储过程sp_rename与OBJECTPROPERTY来更改重命名。
实例一,更改表名:
View Code
IF
EXISTS(
SELECT
TOP
1
1
FROM dbo.sysobjects
WHERE id
=
object_id(N
'
[dbo].[Employee]
')
AND OBJECTPROPERTY(id, N ' IsUserTable ') = 1
)
EXECUTE sp_rename ' Employee ', ' Member '
AND OBJECTPROPERTY(id, N ' IsUserTable ') = 1
)
EXECUTE sp_rename ' Employee ', ' Member '
实例二,更改字段名:
View Code
EXECUTE sp_rename
'
Member.[EmployeeName]
',
'
Name
',
'
COLUMN
'
实例三,更改主键:
View Code
IF
EXISTS(
SELECT
TOP
1
1
FROM sysobjects
WHERE id
=
OBJECT_ID(N
'
[PK__Employee__B00879C509746778]
')
AND OBJECTPROPERTY(id, N ' IsPrimaryKey ') = 1)
EXECUTE sp_rename ' PK__Employee__B00879C509746778 ', ' PK_Member ', ' OBJECT '
AND OBJECTPROPERTY(id, N ' IsPrimaryKey ') = 1)
EXECUTE sp_rename ' PK__Employee__B00879C509746778 ', ' PK_Member ', ' OBJECT '
实例四,更改存储过程名:
View Code
IF
EXISTS(
SELECT
TOP
1
1
FROM sysobjects
WHERE id
=
OBJECT_ID(N
'
[usp_Employee_Import]
')
AND OBJECTPROPERTY(id, N ' IsProcedure ') = 1)
EXECUTE sp_rename ' usp_Employee_Import ', ' MemberInsSp '
AND OBJECTPROPERTY(id, N ' IsProcedure ') = 1)
EXECUTE sp_rename ' usp_Employee_Import ', ' MemberInsSp '
执行成功之后,你会收到一条信息:
Caution: Changing any part of an object name could break scripts and stored procedures.