我必须从MS SQL Server迁移,现在创build一个新的ORACLE数据库,部分数据来自我的旧表。
为此,我需要从数十个表中获取unicode CSV或TXT文件的数据,并用“|”分隔字段。
坏的是MS SQL Server的默认导出主服务器一次只能导出单个表,并且需要相当长的时间为每个表configuration导出选项。 我开始手动输出它们,但是我在第10桌受到了攻击。
你知道如何将所有的表格从SQL服务器导出为csv或txt吗?
更强大的解决scheme是使用Oracle迁移工作台。 这曾经是一个独立于Oracle的实用工具,现在已经包含在Oracle SQL Developer中 。 如果你和CLOB / BLOB数据types那么这是要走的路。 您还应阅读有关如何迁移的Oracle 文档 ,因为SQL Developer迁移界面不太直观。
如果你想要把所有表格导出到csv,你可以使用BCP或者SSIS 。 有一篇关于使用某些t-sql的简单对话并为数据库中的所有表生成bcp导出命令的非常好的文章。 您还可以创build简单的SSIS包,使用平面文件目标任务将所有表导出到csv。
这里有一些快速和肮脏的,会为你生成BCP命令。 在SSMS中运行它,在命令提示符处运行输出。
USE AdventureWorks SELECT 'bcp ' + QUOTENAME(DB_NAME()) + '.' +QUOTENAME(SCHEMA_NAME(schema_id)) + '.' +QUOTENAME(name) + ' '+'out'+' ' + name + '.csv -w -t"|" -E -S ' + @@servername + ' -T' FROM sys.objects WHERE TYPE='u' AND is_ms_shipped=0
如果您有权访问SQL Management Studio(我相信即使免费快递版本也具有此function),您可以右键单击数据库并select“任务” – >“导出数据”。 作为您的目的地,select“平面文件”的目的地,你可以调整格式(固定宽度,CSV等)。
有一个名为Oracle Migration Workbench的工具,您可以从Oracle获得这个工具,它是专门为您所需要的而devise的。 这个工具可以包含用户的整个模式,并将它们从MS Sql迁移到Oracle。
我已经使用了它的堆,这是非常好的。
这里是一些更多的信息http://download.oracle.com/docs/html/B10259_01/toc.htm
Ĵ
为此,您可以尝试dbForge Studio for SQL Server和Oracle。 开始页面,菜单“数据库”,然后导出数据,接下来在向导中select“CSV”和其他数据库选项。