sql2005数据库转sql2000数据库转换方法
sql2005转到sql2000这个一直是困扰着sql初学者的一个问题,很多空间只支持sql2000 逼使一些用sql2005做的网站需要转化成sql2000 转化过程如下
-------------------------分割线-----------------------------------
2005转到2000的步骤
1. 生成for 2000版本的数据库脚本
2005 的manger studio
-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
-- 右键要转到2000的库
-- 任务
-- 生成脚本
-- 在"脚本向导"的"选择数据库"中, 确定选择的是要转到2000的库
-- 勾选"为所选数据库中的所有对象编写脚本"
-- 在接下来的"选择脚本选项"中, 找到"为服务器版本编写脚本"项, 选择"SQL Server 2000"
-- 其他选项根据需要设置
-- 最后把脚本保存到一个 .sql 脚本文件
2. 在2000中创建目标数据库
在查询分析器(或2005的manger studio在打开脚本文件), 连接到SQL Server 2000,执行上面生成的脚本.以创建一个新的数据库
3. 将数据从2005导到2000
2005 的manger studio
-- 打开"对象资源管理器"(没有的话按F8), 连接到你的实例
-- 右键要转到2000的库
-- 任务
-- 导出数据
-- 在"SQL Server 导入和导出向导"的"选择数据源"步骤中, 确定选择的是要导出的数据库
-- 在"选择目标"步骤中, 连接到 2000, 并选择步骤2新建的库
-- 在"选择源表和源视图"中, 选择所有的表
-- 最后完成
----------------分割线--------------------------
但是在实际转化过程中会出现几个问题
上面的操作在执行步骤1时可能出现如下错误:
目标服务器版本不支持该对象或不支持该对象的一个属性。 (Microsoft.SqlServer.Smo)
解决方法:
选中待导出的数据库,右键,点击‘属性’,在‘选项’页的‘兼容级别(L)’下选择‘sql server 2000 (80)’
之后点击‘确定’,重新执行前面的步骤1
另,在完成导出之后,最好将‘兼容级别(L)’重新设置回‘sql server 2005 (90)',否则,可能会影响原来在sql 2005语法下
编写的存储过程、函数、视图等脚本代码的正确执行。
----------分割线------------------------------
但是还会出现第2个问题
以 前在虚拟主机的数据库上曾在线新增了一存储过程(数据库登录名与本地数据库登录名不同),后来把整个数据库备份还原到本地 (sqlserver2005),当我再次生成sqlserver2000的脚本时,出现错误: User.UserType: NoLogin 不是 SQL Server 2005 的有效选项 郁闷半天主要找到解决方法:
1.右键选中欲生成脚本的数据库--安全性--架构,删除与原数据库名对应的架构信息
2.右键选中欲生成脚本的数据库--安全性--用户,删除与原数据库名同名的用户名
--------分割线-----------
这个时候再生成脚本就没有问题了
然后继续下边的步骤,ok ,转换成功!
相关文章
- 清除服务器IIS缓存的常用方法
- word,excel,ppt在线预览功能
- postman中文汉化方法
- Windows 2012 2016 2019/IIS8 IIS10 多网站用相同端口部署多张证书(SNI)
- 阿里云oss使用 ossutil 批量转换文件
- 推荐几个第三方可以从google play(谷歌应用商店)直接下载最新原版APP的软件网站
- IIS ccess to the path : D:/... is denied 解决方案
- apk格式增加mine类型,以便可以访问apk
- Windows 2008 如何启用 TLS1.1 1.2 微信小程序提示tls版本低时可以使用此方案
- Sublime text 3 如何格式化HTML/css/js代码
发表评论
评论列表
- 这篇文章还没有收到评论,赶紧来抢沙发吧~