2011-10-19 38 views
34

我有一个.sql文件,我试图将其导入到SQL Server 2008.什么是正确的方法来做到这一点?如何将SQL数据文件导入SQL Server?

+0

你是什么意思的进口?你想在.sql文件中针对数据库运行查询吗? –

+0

它有一堆表,我想在一个网站中使用 –

回答

21

如果你是在谈论一个实际的数据库(一个MDF文件),你会Attach

.sql文件通常使用SQL Server Management Studio中运行。它们基本上是保存的SQL语句,所以可以是任何东西。你不会“导入”它们,更确切地说,你“执行”它们。尽管脚本确实可以插入数据。

另外,要扩展Jamie F的答案,除非知道它在做什么,否则不要针对数据库运行SQL文件。 SQL脚本可以为选中的exe

9
  1. 启动SQL Server Management Studio中
  2. 连接到数据库
  3. 文件>打开>文件是危险的,挑选你的文件
  4. 执行它
+0

我试过,但它说“操作无法完成”... – user2070775

+0

当打开/执行非平凡的文件时SQL Server需要转储的陈述。你会认为这是它擅长的。 –

+2

这不适用于大于250MB的文件:( – Nitesh

2

.sql文件是一组可以针对SQL服务器执行的命令。

有时.sql文件将指定数据库,有时您可能需要指定此数据库。

您应该与您的DBA或负责维护您的数据库的人员交谈。他们可能会想要快速查看文件。 .sql文件可能会造成很大的伤害,甚至是不经意的。

如果您想尝试前进,请参阅其他答案。

3

试试这个过程 -

打开查询分析器

开始 - >程序 - > MS SQL服务器 - >查询分析器

一旦打开,连接到数据库你希望在脚本上运行。

接下来,使用文件 - >打开选项打开SQL文件。选择.sql文件。

打开后,可以按F5执行该文件。

65

如果你的文件是一个大文件,50MB +,那么我建议你使用sqlcmd,这是SQL Server捆绑的命令行工具。它很容易使用,它可以很好地处理大文件。我使用下面的命令昨天试了一下带有22GB文件:

sqlcmd -S SERVERNAME\INSTANCE_NAME -i C:\path\mysqlfile.sql -o C:\path\output_file.txt 

上面的命令假定您的服务器名称是SERVERNAME,你的SQL Server安装使用实例名INSTANCE_NAME,而Windows验证是默认的身份验证方法。执行后,output.txt将包含如下内容:

... 
(1 rows affected) 
Processed 100 total records 

(1 rows affected) 
Processed 200 total records 

(1 rows affected) 
Processed 300 total records 
... 

如果您需要查看大文件的内容,请使用readfileonline.com。

+1

尽管我不认为它回答了这个问题,但它是有用的信息,所以“非常感谢” – MVCDS

+1

需要永远......但...... – spankmaster79