当前位置:首页>>开发编程>>数据库>>新闻内容  |虚拟主机 主机托管
SQL Server 2000导入SQL Server 2005生成脚本的问题
作者: 发布时间:2008-8-17 17:10:10 | 【字体:

今天用SQL Server 2005生成了脚本,想导入到SQL Server 2000里面去,运行的时候却发现竟然出现N多的错误!在导出脚本的时候我明明是选择了“为服务器版本编写脚本”为SQL Server 2000啊,但是怎么还是不对呢?

错误展示

在SQL分析的时候出现错误:

消息 170,级别 15,状态 1,第 22 行
第 22 行: '(' 附近有语法错误。

在执行SQL的时候出现错误:

消息 208,级别 16,状态 1,第 1 行
对象名 'sys.objects' 无效。
消息 208,级别 16,状态 1,第 1 行
对象名 'sys.foreign_keys' 无效。

原因其实就是SQL Server 2005与SQL Server 2000的语法不同,暂时icech还没有找到一个简单的转换方法,如果你的语句不多,可以用手动或者替换的方法自动转换一下。具体方法如下:

1、将sys.objects替换成dbo.sysobjects

2、将小写的object_id替换成id

例如:
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[hand]') AND type in (N'U'))
修改成
IF NOT EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[hand]') AND type in (N'U'))

3、将WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]去掉
注意:我发现这个如果不去掉的话也能成功,但是一些默认的主键就会没有加载成功。


文章来源:西部E网
·教你安全配置SQL Server 2000数据库
·如何在Windows XP上安装SQL Server 2000
·SQL Server数据库从2000还原为2005的步骤
·SQL Server数据库还原的SQL语句及操作
·在SQL Server 2005下还原数据库的一个错误解决
·在SQL Server 2005新建用户出15195错误
·如何在SQL Server 2005中为安装程序增加计数器注册表项值
·SQL Server 2005日志文件损坏的处理方法
·快速的查出SQL Server 2005全部数据字典
 放生
 愚爱
 够爱
 触电
 白狐
 葬爱
 光荣
 画心
 火花
 稻香
 小酒窝
 下雨天
 右手边
 安静了
 魔杰座
 你不像她
 边做边爱
 擦肩而过
 我的答铃
 怀念过去
 等一分钟
 放手去爱
 冰河时代
 你的承诺
 自由飞翔
 原谅我一次
 吻的太逼真
 左眼皮跳跳
 做你的爱人
 一定要爱你
 飞向别人的床
 爱上别人的人
 感动天感动地
 心在跳情在烧
 玫瑰花的葬礼
 有没有人告诉你
 即使知道要见面
 爱上你是一个错
 最后一次的温柔
 爱上你是我的错
 怎么会狠心伤害我
 不是因为寂寞才想
 亲爱的那不是爱情
 难道爱一个人有错
 寂寞的时候说爱我