sql导出数据库时报 "登陆 xxx 失败",无法完成
修改数据库对象所有人
今天帮朋友传数据库报错,提示 "
[Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]登陆 xxx 失败",正好前段时间碰到同样问题,尝试删除用户 xxx , 又报错,提示" 用户拥有对象,所以无法删除". 查看数据库,发现该用户拥有很多存储过程,一个一个改太麻烦,从网上找到如下方法,恰好解决此问题:
CREATE PROCEDURE dbo.User_ChangeObjectOwnerBatch
@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
-- select @name,@NewOwner,@OldOwner
FETCH NEXT from curObject INTO @Name, @Owner
END
close curObject
deallocate curObject
GO
然后执行存储过程即可
exec User_ChangeObjectOwnerBatch
相关文档:
查询 card 的记录为两次以上的 card,记录数:
select count(card), card from TableName group by card having count(card) > 1
级联更新,级联删除:
ColumnName type not null constraint FK_Name foreign key(ColumnName) references PrimaryTable(ColumnName) on update/delete cascade
自动计算列:
create tabl ......
50个Sql语句,仅供学习!
Student(S#,Sname,Sage,S***) 学生表
Course(C#,Cname,T#) 课程表
SC(S#,C#,score) 成绩表
Teacher(T#,Tname) 教师表
问题:
1、查询“001”课程比“002”课程成绩高的所有学生的学号;
select a.S# from (select s#,score from SC ......
eclipse 关联 sql server 的JDBC问题
编程运行后提示:
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
上网查了,有的说在环境变量里的classpath添加 JDBC里的3个jar文件就可以,但是使用后还是不行。
后来才知道解决方法:
包资源管理器-->包名右键"构建路径"--> ......
MS SQL SERVER数据库备份BAK还原数据库
由于数据误操作,想恢复一下操作前的数据。于是新建了一个空数据库。使用原来的备份文件 bak。来恢复成一个新的数据库。这样就可以手动恢复数据了。
但是在恢复新建数据库的时候总是不成功,提示错误入下:
The backup set holds a backup of a database other than the existing ......
/******* 导出到excel
exec master..xp_cmdshell ’bcp settledb.dbo.shanghu out c:\temp1.xls -c -q -s"gnetdata/gnetdata" -u"sa" -p""’
/*********** 导入excel
select *
from opendatasource( ’microsoft.jet.oledb.4.0’,
’data source="c:\test.xls";user ......