从平面文件加载SQL表

时间:2008-09-29 10:49:29

标签: sql sql-server-2005

我正在尝试从平面文件加载SQL表。我所说的单位是逗号分隔文件。这包含填充表所需的所有数据,每个列用逗号“,”分隔。我需要一些方法可以更快地将这些内容加载到表中。

6 个答案:

答案 0 :(得分:5)

如果您使用的是SQL Server,请使用BULK INSERT

如果您使用的是Oracle,请参阅我的回答here

答案 1 :(得分:1)

无论您使用何种数据库管理系统,都可以使用脚本语言(如perl或php)建立与数据库的连接,解析文件,然后将数据插入数据库。当然,你必须知道一种脚本语言......

答案 2 :(得分:1)

使用mysqldump?

mysqldump -u username -p database_name < sql_file.sql

答案 3 :(得分:1)

看看这些速度比较,并确定最适合您的速度: http://weblogs.sqlteam.com/mladenp/archive/2006/07/22/10742.aspx

答案 4 :(得分:0)

对于SQL Server 2005,另一个选项是Integration Services(SSIS);使用SSIS,您可以在导入过程中对数据进行更多的工作(例如,在其他表中查找值,过滤掉行,导入多个表等)。

答案 5 :(得分:-1)

这听起来有点过时,但我使用的编辑器能够为这些作品录制和重放宏。

我使用Textpad(www.textpad.com)(是的,我买了许可证),你也可以使用UltraEdit(www.ultraedit.com)或熟悉的东西。它就像启动maro录像机一样简单,编辑第一行以便它与SQL兼容,转到下一行并停止录像机。然后让编辑器将宏重复到文件的末尾。

主要优点是:处理完文件后,您可以将其存储到版本控制中。如果操作正确,它适用于可以执行包括SQL命令在内的文件的每个数据库(或工具)。