SQL Server数据库重命名、数据导出的方法说明

第一个问题是重命名数据库问题:在企业管理器中是无法直接对数据库重命名的,只能在查询分析器中操作

代码如下:

create proc killspid (@dbname varchar(20))      
  as      
  begin      
  declare     @sql     nvarchar(500),@temp   varchar(1000)  
  declare     @spid     int      
  set     @sql='declare     getspid     cursor     for          
  select     spid     from     sysprocesses     where     dbid=db_id('''+@dbname+''')'      
  exec     (@sql)      
  open     getspid      
  fetch     next     from     getspid     into     @spid      
  while     @@fetch_status   =0  
  begin      
      set   @temp='kill'+rtrim(@spid)  
      exec(@temp)  
  fetch next from getspid into @spid      
  end      
  close     getspid      
  deallocate     getspid      
  end
  -- 上面创建一个从存储过程   
  -- exec killspid 'Test1' -- 调用存储过程关闭连接
  -- exec sp_renamedb 'Test1','Test2' -- 重命名数据库

用以上方法可以重命名数据库,当然还有一种方法是在企业管理器中选择数据库->所有任务->分离数据库->清除连接,然后直接直接调用

代码如下:

exec sp_renamedb 'Test1','Test2'

第二个问题是更改数据库所有者问题:在查询分析器中选择要更改的数据库,执行如下代码即可newowner为新的所有者

代码如下:

exec sp_MSForEachTable 'sp_changeobjectowner ''?'', ''newowner'''

第三个问题是数据表数据的导入导出的问题:人们在导入导出数据的时候常会导致数据库对象的丢失,例如主键、标识、默认值等,解决的方法是在制定表复制或查询那一步选择第三项
在SQL Server数据库之间复制对象和数据
选择下一步,如果你只是要操作一部分表而不是整个数据库的话,取消复制所有对象这个选项,点击后面的选择打开选择对象对话框,在其中选择要操作的数据库对象即可,点击下一步,操作完成。

第四个问题是替换字段内容的问题:如果你的数据库被人注入病毒代码了,又没有备份,那就只有自己动手替换掉了

代码如下:

update dunktopic set 字段 =replace(字段,'被替换的内容','替换内容');

第五个问题是数据库中表的所有者问题:在某些情况下,如果你恢复网站数据库后,访问网站的时候出现80040e21错误,
错误 '80040e21' ODBC 驱动程序不支持所需的属性
那么有可能是因为数据库所有者问题导致的,解决办法是使用问题一中的方法更改数据库的所有者为dbo或者其它的用户即可。
第六个问题是数据还原问题,数据库还原之后,访问网站会莫名其妙的出现内部服务器500错误,其实是因为因为没有给数据库用户分配该数据库权限的问题,特征就是该数据库用户的登录没有了。解决办法是:删除没有登录名的这个用户,在企业管理器的安全性设置中,选择刚才那个没有登录名的用户,给它分配刚才还原的数据的datawrite和dataread权限。为安全起见,建议不要分配owner权限。

(0)

相关推荐

  • mysql数据库重命名语句分享

    复制代码 代码如下: CREATE DATABASE `ct` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;            RENAME TABLE `51cola`.`commentmeta`                  TO `ct`.`commentmeta`;            RENAME TABLE `51cola`.`comments`                  TO `ct`.`comments`

  • SQL Server数据库重命名、数据导出的方法说明

    第一个问题是重命名数据库问题:在企业管理器中是无法直接对数据库重命名的,只能在查询分析器中操作 复制代码 代码如下: create proc killspid (@dbname varchar(20))         as         begin         declare     @sql     nvarchar(500),@temp   varchar(1000)     declare     @spid     int         set     @sql='declar

  • sql server数据库高可用日志传送的方法

    一. 日志传送概述 SQL Server使用日志传送,可以自动将主服务器的事务日志备份发送到一个或多个辅助数据库上.事务日志备份分别应用于每个辅助数据库. 可选的第三个服务器实例(称为"监视服务器")记录备份和还原操作的历史记录及状态,还可以在无法按计划执行这些操作时引发警报. 可选的监视服务器,记录备份和还原操作的历史记录及状态. 下面话不多说了,来一起看看详细的介绍吧. 优点 提供灾难恢复解决方案 支持对辅助数据库的受限的只读访问权限 允许用户定义日志发送的延迟时间(如果主数据库上

  • 快速实现SQL Server数据库恢复备份

    本文为大家分享了SQL Server数据库恢复备份的两种方法,供大家参考,具体内容如下 第一种方法:通常我们采用恢复备份的方式,选择目标数据库,选择源设备进行恢复. 截图如下: 第二种方法:这种方式有时候不太方便,而脚本方式将更方便,使用脚本方式如下. /* 备份数据DB 到.bak文件.然后利用此bak文件恢复一个新的数据库DBTest. */ USE master BACKUP DATABASE DB TO DISK = 'e:\DBTest.bak' RESTORE FILELISTONL

  • SQL Server 跨库同步数据

    最近有个需求是要跨库进行数据同步,两个数据库分布在两台物理计算机上,自动定期同步可以通过SQL Server代理作业来实现,但是前提是需要编写一个存储过程来实现同步逻辑处理.这里的存储过程用的不是opendatasource,而是用的链接服务器来实现的.存储过程创建在IP1:192.168.0.3服务器上,需要将视图v_custom的客户信息同步到IP2:192.168.0.10服务器上的t_custom表中.逻辑是如果不存在则插入,存在则更新字段. create PROCEDURE [dbo]

  • 配置SQL Server数据库恢复模式(2种方法)

    下面主要介绍配置SQL Server数据库恢复模式的两种方法. 用T-SQL设置恢复模式 你可以使用"ALTER DATABASE"命令加"SET RECOVERY"语句来修改数据库的恢复模式.例如,下面的查询语句把"AdventureWorks"数据库的恢复模式设置为完全恢复模式. ALTER DATABASE AdventureWorks SET RECOVERY FULL ; 你可以查询"sys.databases"的目

  • SQL Server数据库附加失败的解决办法

    本文为大家分享了SQL Server数据库附加失败的具体解决方法,供大家参考,具体内容如下 1.错误3415 问题:附加数据库的时候,发现总是附加失败,查看消息时发现问题如下: 查看消息后发现错误代码为3415 原因:数据库文件是只读的 解决方法:在文件属性中去掉只读属性 2.错误5120 问题:解决完错误3415后,附加数据库还是出现错误,查看消息时发现问题如下: 查看消息后发现错误代码为5120 解决方法1(尝试):把数据库登陆方式改为Windows身份认证,然后再试一下: 解决方法2:查看

  • SQL Server数据库中批量导入数据的四种方法总结

    在软件项目实施的时候,数据导入一直是项目人员比较头疼的问题.其实,在SQL Server中集成了很多成批导入数据的方法.有些项目实施顾问头疼的问题,在我们数据库管理员眼中,是小菜一碟.现在的重点就是,如何让用户了解这些方法,让数据导入变得轻松一些. 第一:使用Select Into语句 若企业数据库都采用的是SQL Server数据库的话,则可以利用Select Into语句来实现数据的导入.Select Into语句,他的作用就是把数据从另外一个数据库中查询出来,然后加入到某个用户指定的表中.

  • SQL Server数据库bcp导出备份文件应用示例

    /** * 授权 */ EXEC sp_configure 'show advanced options',1; go reconfigure; go exec sp_configure 'xp_cmdshell',1; go reconfigure; go /**导入指定表的文本文件*/ EXEC master..xp_cmdshell 'bcp dbname..tablename in d:\DT.txt -c -Sservername -Usa -Ppassword' exec maste

  • SQL Server数据库中批量导入数据的2种方法

    在软件项目实施的时候,数据导入一直是项目人员比较头疼的问题.其实,在SQL Server中集成了很多成批导入数据的方法.有些项目实施顾问头疼的问题,在我们数据库管理员眼中,是小菜一碟.现在的重点就是,如何让用户了解这些方法,让数据导入变得轻松一些.相信以下方法大家都用过了,温故而知新哈,如果有更好的方法希望大家都提出来~ 一.使用Select Into语句 若企业数据库都采用的是SQL Server数据库的话,则可以利用Select Into语句来实现数据的导入.Select Into语句,他的

  • 碎片拼接技术恢复XenServer服务器SQL Server数据库数据

    目录 1.数据恢复方案一 2.数据恢复方案二 ​环境:​ Dell PowerEdge服务器: XenServer虚拟化平台: 4块希捷2T STAT硬盘用RAID卡组成的RAID10: XenServer虚拟机操作系统:Windows Server系统: 虚拟机磁盘:1个10G系统盘和1个5G数据盘,部署的Web服务器(ASP +SQL). ​故障:​ 服务器突然断电导致服务器中一台XenServer虚拟机不可用,虚拟磁盘文件丢失,服务器管理员联系北亚数据恢复中心寻求帮助. ​故障检测和分析:

随机推荐