SQL SERVER不同语言版本之间转换的注意事项? 可能涉及多语言内容存储的字段将 text,varchar,char,...改为ntext,nvarchar,nchar...代码中赋值时以N前辍。如果前台程序调存储过程或传参数,将参数声明为n系 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 sql 2000与sql 2005相互转移的问题作者:Nina 2008-01-02 内容导航:概述 第1页: 概述 【IT168技术文档】 1. 可以用脚本备份 manger studio--右键你的数据库--任务--生成脚本 在脚本生成向导的"选择对象类型"步骤中, 将"存储过程"选上, 在接下来的"选择存储过程"的步骤中, 选择所有的存储过程(或者你要复制的存储过程) 完成后, 所有存储过程的脚本会生成在一个新的查询窗口中, 关掉生成脚本向导, 在生成的存储过程脚本的窗口中, 右键--连接--更改连接, 连接到存储过程复制的目的服务器, 选择合适的数据库, 按F5执行即可完成存储过程的复制. 2. 可以使用SSIS, 创建SSIS包, 就可以使用数据库对象复制的这个组件来复制存储过程(SSIS相当于2000的DTS) SQL Server 2000 到 2005的迁移 网友: SQL Server 2000到SQL Server 2005的迁移成本有多大? 胡百敬: 单纯的版权费,移转成本较容易计算,但因为 SQL 2005 的差异较大,可能需要考虑学习、开发等不容易弄清的整体拥有成本。 网友: 在的网站用了300多个存储过程和30多个函数,用不用改动? 胡百敬: 基本上预存程序由2000转移到2005并没有带大的问题,不过像2000的版本里m原来应该写成 [数据库名].dbo.[数据表名],但是简写为[数据库名]..[数据表名] 的时候转移到sql 2005 会出错。就这个部份要稍微留意一下即可。 网友: 在我们转向2005的过程中, 我们需要注意那方面的问题呢? 胡百敬: 在 Books online 上有表列两个版本的不兼容性,以及提供 Upgrade Advisor 做事前的分析。你可以先用 Upgrade advisor 稍作分析,再决定如何因应。另外,2000 和 2005 可以同时安装在同一台机器上,从 2000 备份出来的数据库也可以 restore 到 2005(反向不行),所以你可以先行测试。 sql server 2005迁移至sqlserver2000 最近使用了微软倾力打造的SqlServer2005数据库,感觉功能很强,管理简便,非常容易上手。尤其是客户端工具"Sql Server Management Studio",集合了2000查询分析器和企业管理器两大组件的功能,可谓我生平所见之最牛B数据库管理工具。 正是由于看中了2005的开发简便的使用特性,项目组将新的"考勤2.0" Project的开发平台统统移到了2005之上。坦率的说,开发效率的确有所提高,用起来感觉很爽。但好景不长,新项目开发完成推广工作开始后,问题随之而来——绝大多数公司数据库管理系统依旧是2000版本的,且他们绝对不可能为了装区区一套不过5000元的2.0考勤管理软件而花一万元人民币升级至 2005。 所以为了推广工作顺利进行,我们必须将原本2005平台的数据库向下兼容至2000版本!!!很不幸,这一艰巨的任务落到了我的头上。 我的迁移计划如下: 1.Export Data,将所有表连同其中数据复制到2000平台的DBMS。 2.Generate Scripts,依次将View,Function,Procedure导出到2000数据库。 迁移过程中发现了很多问题,致使迁移任务不能顺利的完成。2000和2005还是有很多不同之处的。 1.在2000的用户自定义函数中,不能使用“非确定性的函数”,比如getdate()。 解决方案,可以在函数调用之初,就将getdate()作为参数传过去。 2.系统对象的前缀有所不同。2000的前缀是dbo;而2005的前缀是sys。 3.2000存储过程调用函数参数传递时必须传直接变量或常量。所以不能使用getdate(),或case when 之类的语句。解决方案, 可以在函数调用之初,将getdate()/case when 的值赋值给一个变量,再传过去。 4.select top x语句,x不能为变量,且x不能加括号。 5.insert into exec (@param1)语法再2000中不能编译通过,应改exec ('insert into'+@param1)1 @fcuandy ,谢谢你的回复。N'之前的程序都已经是这样写了,多语言字段的长度也考虑过了。我们目前做的就是把数据库换成另一语言版本的,本身模块,接口之间没有任何变化,所以想在这里请教有这方面经验的各位再提醒下有什么要注意的。 你把所有的char,varchar都改成nvarchar,这样应该能避免很多问题. SQL附加数据库的SQL语句是什么? 高手赐教 字符串问题 RANK()的问题 大乌龟:DATALENGTH 什么意思 sql server2005 阻塞问题 用1条SQL,如何实现下列的结果 如何显示小数点左侧的0?如0.123,在Enterprise Manager里被显示为 .123,有点别扭。 SQL server不能新建库…… 求SQL语句高手??100分送上....... 将未知格式的EXCEL表格导入SQL SERVER中 (八百里加急)SQL2005群集能否访问多个盘符??? 多条件查询
【IT168技术文档】 1. 可以用脚本备份
manger studio--右键你的数据库--任务--生成脚本
在脚本生成向导的"选择对象类型"步骤中, 将"存储过程"选上, 在接下来的"选择存储过程"的步骤中, 选择所有的存储过程(或者你要复制的存储过程) 完成后, 所有存储过程的脚本会生成在一个新的查询窗口中, 关掉生成脚本向导, 在生成的存储过程脚本的窗口中, 右键--连接--更改连接, 连接到存储过程复制的目的服务器, 选择合适的数据库, 按F5执行即可完成存储过程的复制.
2. 可以使用SSIS, 创建SSIS包, 就可以使用数据库对象复制的这个组件来复制存储过程(SSIS相当于2000的DTS) SQL Server 2000 到 2005的迁移 网友: SQL Server 2000到SQL Server 2005的迁移成本有多大? 胡百敬: 单纯的版权费,移转成本较容易计算,但因为 SQL 2005 的差异较大,可能需要考虑学习、开发等不容易弄清的整体拥有成本。 网友: 在的网站用了300多个存储过程和30多个函数,用不用改动? 胡百敬: 基本上预存程序由2000转移到2005并没有带大的问题,不过像2000的版本里m原来应该写成 [数据库名].dbo.[数据表名],但是简写为[数据库名]..[数据表名] 的时候转移到sql 2005 会出错。就这个部份要稍微留意一下即可。 网友: 在我们转向2005的过程中, 我们需要注意那方面的问题呢? 胡百敬: 在 Books online 上有表列两个版本的不兼容性,以及提供 Upgrade Advisor 做事前的分析。你可以先用 Upgrade advisor 稍作分析,再决定如何因应。另外,2000 和 2005 可以同时安装在同一台机器上,从 2000 备份出来的数据库也可以 restore 到 2005(反向不行),所以你可以先行测试。 sql server 2005迁移至sqlserver2000
最近使用了微软倾力打造的SqlServer2005数据库,感觉功能很强,管理简便,非常容易上手。尤其是客户端工具"Sql Server Management Studio",集合了2000查询分析器和企业管理器两大组件的功能,可谓我生平所见之最牛B数据库管理工具。 正是由于看中了2005的开发简便的使用特性,项目组将新的"考勤2.0" Project的开发平台统统移到了2005之上。坦率的说,开发效率的确有所提高,用起来感觉很爽。但好景不长,新项目开发完成推广工作开始后,问题随之而来——绝大多数公司数据库管理系统依旧是2000版本的,且他们绝对不可能为了装区区一套不过5000元的2.0考勤管理软件而花一万元人民币升级至 2005。 所以为了推广工作顺利进行,我们必须将原本2005平台的数据库向下兼容至2000版本!!!很不幸,这一艰巨的任务落到了我的头上。 我的迁移计划如下:
1.Export Data,将所有表连同其中数据复制到2000平台的DBMS。
2.Generate Scripts,依次将View,Function,Procedure导出到2000数据库。 迁移过程中发现了很多问题,致使迁移任务不能顺利的完成。2000和2005还是有很多不同之处的。
1.在2000的用户自定义函数中,不能使用“非确定性的函数”,比如getdate()。
解决方案,可以在函数调用之初,就将getdate()作为参数传过去。
2.系统对象的前缀有所不同。2000的前缀是dbo;而2005的前缀是sys。
3.2000存储过程调用函数参数传递时必须传直接变量或常量。所以不能使用getdate(),或case when 之类的语句。解决方案, 可以在函数调用之初,将getdate()/case when 的值赋值给一个变量,再传过去。
4.select top x语句,x不能为变量,且x不能加括号。
5.insert into exec (@param1)语法再2000中不能编译通过,应改exec ('insert into'+@param1)
1
@fcuandy ,谢谢你的回复。N'之前的程序都已经是这样写了,多语言字段的长度也考虑过了。我们目前做的就是把数据库换成另一语言版本的,本身模块,接口之间没有任何变化,所以想在这里请教有这方面经验的各位再提醒下有什么要注意的。