视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
SQLServer2005数据库转SQLServer2000的方法小结
2020-11-09 07:05:36 责编:小采
文档

今天有朋友推荐个活就是把Sql Server 2005的数据库转到Sql Server 2000里,但实际操作起来遇到的问题还不少,网上搜了一些办法,在此陈列出来,并把我使用时遇到的问题及解决方案一并记录下来,以备后期查阅

前几步和网上说的一样,先生成2000的脚本,然后再到2000里面执行。操作如下:

打开 SQL Server 2005 的Manger Studio

-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例

找到你要转换的数据库(建议先将此数据库里的登录名清空,否则转换会出现问题)

-- 右键选择要转成 SQL Server2000 的数据库

-- 选择 任务

-- 选择 生成脚本

-- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库

-- 勾选"为所选数据库中的所有对象编写脚本" (这个勾不要其实也可以的,根据你的需要来。)

-- 在接下来的"选择脚本选项"中, 找到"为服务器版本编写脚本"项, 选择"SQL Server 2000"

-- 其他选项根据需要设置

-- 最后把脚本保存到一个 .sql 脚本文件

代码如下:
有可能会遇到的问题:
目标服务器版本不支持该对象或不支持该对象的一个属性。 (Microsoft.SqlServer.Smo)
脚本无法成功生成。此问题是由于“数据库兼容性级别”导致的。
解决方案:
server有个改兼容性级别的语句:
sp_dbcmptlevel [ [ @dbname = ] name ] [ , [ @new_cmptlevel = ] version ]
语句如下:
EXEC sp_dbcmptlevel '你的数据库名', '80';
GO
这个80就是各个版本对应的版本号
60 = SQL Server 6.0
65 = SQL Server 6.5
70 = SQL Server 7.0
80 = SQL Server 2000 ——8.0
90 = SQL Server 2005 ——9.0
由于是转到2000于是兼容性级别就要调到80

2. 在2000中创建目标数据库
在查询分析器(或2005的manger studio在打开脚本文件), 连接到SQL Server 2000,执行上面生成的脚本.以创建一个新的数据库 。

代码如下:
有可能会出现的问题:
max附近有语法错误
server2000里面没有max这种用法,所以建议大家把SQL脚本里的MAX改成一个很大的数就是了,比如4000(4000好像是上限)。
odb问题
其他数据库我不知道,但是不论你用server什么数据库,只要不是你自己的,通常管理员是不会给你配odb权限的,所以把所有的odb檫掉就可以了。另外还有个办法,用你的远程数据库登录名可以改成那个用户的所有者,在本地也修改一下,然后再运行,就OK啦。

3. 将数据从2005导到2000

首先打开SQL Server 2005 的Manage Studio
-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
-- 右键选择要转成 SQL Server2000 的数据库--选择 任务 --导出数据
(注意,如果你的Manage Studio 为 Express版本,那任务里是没有导出数据选项的,你可以直接找到你的数据安装目录里的Binn文件夹,例如 C:\Program Files\Microsoft SQL Server\90\DTS\Binn 然后执行DTSWizard.exe文件即可。)
-- 在"SQL Server 导入和导出向导"的"选择数据源"步骤中, 确定选择的是要导出的数据库
-- 在"选择目标"步骤中, 连接到 2000, 并选择步骤2新建的库
-- 在"选择源表和源视图"中, 选择所有的表(注意,如果表中有标识的话,要在此处选中表,然后单击下方的“编辑映射”按钮,新开窗口中勾选“使用标识插入”,每个有标识的表都要这样选择一次。还有,此处导入数据如果牵扯到主外键关系或者其他约束的话,一定要分批次按照关系的先后顺序导入,否则会报错。)
-- 最后完成

代码如下:
最后注意下2000的select top 后跟的不可以是表达式,所以如果你的分页里有用到类似
declare @pageIndex int
select top (@pageIndex-1)*12 newsID from News
的话,请一律改成字符串拼接方法,例如下面的例子:
declare @strSql varchar(1000)
declare @pageIndex int
set @pageIndex= (@pageIndex-1)*12
set @strSql='select top '+str(@pageIndex)+'  newsID from News'
exec (@strSql)

sql server 2005转到2000的步骤(简易版,一路不错形式)

2005转到2000的步骤
1. 生成for 2000版本的数据库脚本
2005 的manger studio
-- 打开对象资源管理器(没有的话按F8), 连接到你的实例
-- 右键要转到2000的库
-- 任务
-- 生成脚本
-- 在脚本向导的选择数据库中, 确定选择的是要转到2000的库
-- 勾选为所选数据库中的所有对象编写脚本
-- 在接下来的选择脚本选项中, 将”编写创建数据库的脚本”设为True,找到为服务器版本编写脚本项, 选择SQL Server 2000
-- 其他选项根据需要设置
-- 最后把脚本保存到一个 .sql 脚本文件

2. 在2000中创建目标数据库
在查询分析器(或2005的manger studio在打开脚本文件), 连接到SQL Server 2000,执行上面生成的脚本.以创建一个新的数据库

3. 将数据从2005导到2000
打开SQL Server 2000的企业管理器
-- 右键要导入数据的数据库
-- 任务
-- 导入数据
-- 在SQL Server 导入和导出向导的选择数据源步骤中, 确定选择的是要导出的数据库
-- 在选择数据源步骤中, 连接到 2005, 并选择源数据库
-- 在选择源表和源视图中, 选择所有的表
-- 最后完成

您可能感兴趣的文章:

  • SQL Server 2005降级到2000的正确操作步骤分享
  • 下载本文
    显示全文
    专题