And*_*rew 5 export csv sql-server sql-server-2008
我必须从 MS SQL Server 迁移,现在创建一个新的 ORACLE 数据库,其中的数据部分来自我的旧表。
为此,我需要从数十个表中获取数据作为 Unicode CSV 或 TXT 文件,字段以“|”分隔。
不好的是,MS SQL Server 的默认导出大师一次只能导出一个表,并且为每个表配置导出选项需要相当长的时间。我开始手动导出它们,但在第 10 桌时我神经紧张。
您知道如何将所有表从 SQL Server 导出为 csv 或 txt 的方法吗?
更强大的解决方案是使用 Oracle 迁移工作台。它曾经是 Oracle 中的一个独立实用程序,但现在包含在Oracle SQL Developer中。如果您使用 CLOB/BLOB 数据类型,那么这就是正确的选择。您还应该阅读有关如何迁移的Oracle文档,因为 SQL Developer 迁移界面不是很直观。
如果您确实想将所有表导出为 csv,您可以使用BCP或SSIS。有一篇关于simple-talk的非常好的文章,介绍了如何使用一些 t-sql 并为数据库中的所有表生成 bcp 导出命令。您还可以创建简单的 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
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
16997 次 |
最近记录: |