MS SQL 2000/2005 修改表所有者存储过程
Create PROCEDURE [dbo].[ChangeObjectOwner]
@OldOwner as NVARCHAR(128),
@NewOwner as NVARCHAR(128)
AS
DECLARE @Name as NVARCHAR(128)
DECLARE @Owner as NVARCHAR(128)
DECLARE @OwnerName as NVARCHAR(128)
DECLARE curObject CURSOR FOR
select 'Name' = name,
'Owner' = user_name(uid)
from sysobjects
where user_name(uid)=@OldOwner
order by name
OPEN curObject
FETCH NEXT from curObject INTO @Name, @Owner
WHILE(@@FETCH_STATUS=0)
BEGIN
if @Owner=@OldOwner
begin
set @OwnerName = @OldOwner +'.' + rtrim(@Name)
exec sp_changeobjectowner @OwnerName, @NewOwner
end
FETCH NEXT from curObject INTO @Name, @Owner
END
close curObject
deallocate curObject
------------------------
说明:以上代码只需要在存储过程中新建执行即可,但是第一次执行回出现警告和错误说明,
如果你的asp.net程序执行出现以下类似错误,那说明你的现有的试图或存储过程中的表对象没有改过来,需要修改视图或者存储过程;
对象名 'wzuhll.HomeWork_List' 无效。
由于绑定错误,无法使用视图或函数 'VIEW_hw_studentlist'。
相关文档:
1 如何锁一个表的某一行
A 连接中执行
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ
begin tran
selec ......
应一个朋友的要求,贴上收藏的SQL常用分页的办法~~
表中主键必须为标识列,[ID] int IDENTITY (1,1)
1.分页方案一:(利用Not In和SELECT TOP分页)
语句形式:
SELECT TOP 页记录数量 *
from 表名
WHERE (ID NOT IN
(SELECT TOP (每页行数*(页数-1)) ID
from 表名
ORDER BY ID))
O ......
问题描述:有以下2张表,
表A
0_id 0_name 0_Salary
Y2007001 达哥 &nbs ......
1.如何将一个SQL Server表的结构复制到另一个新建的表中
select * into 新表 from 旧表 where 0 = 1
2.修改字段默认值
alter table 表名 add default 默认值 for 字段名
3. 取得数据库结构
SELECT name from sysdatabases
4.增加列
......