当前位置:  数据库>sqlserver
本页文章导读:
    ▪修改MS SQL数据库名称      在MS SQL中,如果你想修改某一个数据库的名称,你可以通过下面几种方法实现。 方法一:使用SP_RENAMEDB系统存储过程实现。语法: sp_renamedb [ @dbname = ] 'old_name' , [ @newname = ] 'new_name'例子: .........
    ▪sql 2005 数据库升级2008 数据库 和2005 数据附加2008数据备份文件      1.sql 2005 升级sql 2008下载 SQL2008R2 ,为防止出错误,把vs2010 和sql2005 全部关闭。stepup.exe 安装,直接是安装不要覆盖2005 的那样容易出错误。一步一步向下走既可,中间有设置数据库密码和其他选.........
    ▪[转]不同版本的SQL Server之间数据导出导入的方法及性能比较      工作中有段时间常常涉及到不同版本的数据库间导出导入数据的问题,索性整理一下,并简单比较下性能,有所遗漏的方法也欢迎讨论、补充。00.建立测试环境01.使用SQL Server Import and Export Tool.........

[1]修改MS SQL数据库名称
    来源:    发布时间: 2013-11-15

在MS SQL中,如果你想修改某一个数据库的名称,你可以通过下面几种方法实现。


 


方法一:使用SP_RENAMEDB系统存储过程实现。


语法: sp_renamedb [ @dbname = ] 'old_name' , [ @newname = ] 'new_name'


例子: 我需要将数据库Test_1的名称修改为Test



use master
go
exec sp_renamedb @dbname='Test_1', @newname='Test';
go


 


有时候执行该脚本,会报如下错误:


消息 5030,级别 16,状态 2,第 1 行


无法用排他锁锁定该数据库,以执行该操作。


出现这种情况,主要是还有其它程序或用户连接数据库,你必须确保没有任何用户正在使用数据库. 可以通过将数据库设置为单用户模式。在数据库属性——》“连接”选择里面找到限制访问“选项,选择SIGLE_USER选项。然后执行上面语句,即可修改数据库名称。



当然也可以用脚本解决这个问题,查询看看当前有哪些会话连接到这个数据库,如果没有记录,则可直接执行上面脚本。



SELECT SPID FROM master.dbo.sysprocesses W
WHERE dbid=DB_ID('Test1');


 否则执行KILL命令杀掉这些会话进程。


KILL SPID


下面这个脚本可以比较好的处理上面问题,不需要你做过多额外操作,直接用脚本完成任务。


 



use master    
exec sp_dboption @dbname='OldDbName', @optname= 'Single User',@optvalue= 'TRUE'
exec sp_renamedb @dbname='OldDbName', @newname= 'NewDbName'
exec sp_dboption @dbname='NewDbName', @optname= 'Single User', @optvalue='FALSE'
GO


 


  


 


检查修改成功。



SELECT name, database_id
FROM sys.databases
WHERE name = N'DbName';


 


注意:SQL Server 2008后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。


方法二:使用ALTER DATABASE语句修改数据库名称。




USE master;

GO

ALTER DATABASE Test1 MODIFY NAME = Test;

GO


 



方法三:使用Microsoft SQL Server Managment Studio管理工具,选中要修改名称的数据Test1,单击右键,选择”重命名”;注意如果有其他用户会话连接该数据库则会报错,必须先杀掉那些会话进程或使数据库处于单用户模式下,再执行上面操作,否则会报错。


本文链接


    
[2]sql 2005 数据库升级2008 数据库 和2005 数据附加2008数据备份文件
    来源:    发布时间: 2013-11-15

1.sql 2005 升级sql 2008

下载 SQL2008R2 ,为防止出错误,把vs2010 和sql2005 全部关闭。

stepup.exe 安装,直接是安装不要覆盖2005 的那样容易出错误。

一步一步向下走既可,中间有设置数据库密码和其他选择,最后一步安装的时间有点长。

2.sql2008 的数据库备份文件如何导入sql2005 中

找一台sql2008数据中,把备份文件附件sql2008数据库中。

首先在2005 上创建一个是空的数据库,记住是空的,不可以有任何一张表的数据库,

在2005 上操作,选中新建的数据库右键--任务--导入数据---下一步,在该页,服务器名称:输入对方的Ip地址

用sql server 身份连接 用户名和密码也是对方数据库的用户名和密码,一步一步向下走即可。

也可以在sql2008 上选择该数据库邮件--任务--导出数据--剩余操作和导入操作一样。

 

 

 

本文链接


    
[3][转]不同版本的SQL Server之间数据导出导入的方法及性能比较
    来源:    发布时间: 2013-11-15

工作中有段时间常常涉及到不同版本的数据库间导出导入数据的问题,索性整理一下,并简单比较下性能,有所遗漏的方法也欢迎讨论、补充。

00.建立测试环境

01.使用SQL Server Import and Export Tool

02.使用Generate Scripts

03.使用BCP

04.使用SqlBulkCopy

05.使用Linked Server进行数据迁移

06.使用RedGate的SQL Data Compare

07.结果对比

可以先看下测试的结果

 

00.建立测试环境

建立一个测试的环境,一个数据源数据库,版本为SQL Server 2008,一个目标数据库,版本为SQL Server 2000。

实验环境如下图所示,源数据库使用语句生成了100万的测试数据。

 

建立测试表并生成100万的测试数据
 1 IF OBJECT_ID('DEMOTABLE') IS NOT NULL 
 2     DROP TABLE DEMOTABLE
 3 GO
 4 CREATE TABLE DEMOTABLE
 5     (
 6       COL1 VARCHAR(50) ,
 7       COL2 VARCHAR(50) ,
 8       COL3 VARCHAR(50)
 9     )
10 INSERT  INTO DEMOTABLE
11         SELECT TOP 1000000
12                 NEWID() ,
13                 NEWID() ,
14                 NEWID()
15         FROM    MASTER..SPT_VALUES T1
16                 INNER JOIN MASTER..SPT_VALUES T2 ON 1 = 1
17                 INNER JOIN MASTER..SPT_VALUES T3 ON 1 = 1
 01.使用SQL Server Import and Export Tool

使用SQL Server Import and Export Tool进行数据的导出,也可以在目标数据库端使用Import进行导入,这部分套件也是SSIS的一部分。

在源数据库上右键,选择Task -> Export Data

分别填写源数据库和目标数据库的连接信息。

 

 

选择“copy data from one or more tables or views”

选择需要导数据的表,并且可以编辑列的Mapping关系。


    
最新技术文章:
▪Sql Server里删除数据表中重复记录的例子
▪如何查看SQLSERVER中某个查询用了多少TempDB空间...
▪在SQL Server中使用ISNULL执行空值判断查询
▪揭秘SQL Server 2014有哪些新特性(1)-内存数据库
▪揭秘SQL Server 2014有哪些新特性(2)-固态硬盘 Buff...
▪揭秘SQL Server 2014有哪些新特性(3)-可更新列存...
▪揭秘SQL Server 2014有哪些新特性(4)-原生备份加...
▪解决SqlServer 各版本 sa帐户不能登录问题
▪浅析SQL Server中包含事务的存储过程
▪深入分析MSSQL数据库中事务隔离级别和锁机制
▪SQL优化技巧指南
▪人工智能自动sql优化工具--SQLTuning for SQL Server
▪使用 TOP 子句限制UPDATE 语句更新的数据
▪sql server动态存储过程按日期保存数据示例
▪SQLServer用存储过程实现插入更新数据示例
▪SqlServer中tempdb的日志机制原理解析及示例分享...
▪SqlServer数据库提示 “tempdb” 的日志已满 问题...
▪浅谈tempdb在SqlServer系统中的重要作用
▪SqlServer提示“列前缀tempdb.无效: 未指定表名”...
▪SQL命令优化需要记住的9点事项
▪教你如何看懂SQL Server查询计划
▪sql server 2000数据库备份还原的图文教程
▪SqlServer2012中First_Value函数简单分析
▪sql语句中单引号嵌套问题(一定要避免直接嵌...
▪谈谈sqlserver自定义函数与存储过程的区别
▪SQL SERVER使用REPLACE将某一列字段中的某个值替...
▪总结一周内学习的Sql经验(一)
▪sql存储过程详解
▪SQL Server UPDATE语句的用法详解
▪MSSQL事务的存储过程
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3