如何将SQL数据文件导入SQL Server?

Ame*_* Ra 51 sql sql-server-2008

我有一个.sql文件,我正在尝试将其导入SQL Server 2008.这样做的正确方法是什么?

oab*_*rca 88

如果您的文件是一个大文件,50MB +,那么我建议您使用sqlcmd,这是SQL Server捆绑的命令行实用程序.它易于使用,可以很好地处理大文件.我昨天使用以下命令使用22GB文件尝试了它:

sqlcmd -S SERVERNAME\INSTANCE_NAME -i C:\path\mysqlfile.sql -o C:\path\output_file.txt
Run Code Online (Sandbox Code Playgroud)

上面的命令假定您的服务器名称是SERVERNAME,SQL Server安装使用实例名称INSTANCE_NAME,并且Windows auth是默认的auth方法.执行后,output.txt将包含以下内容:

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

(1 rows affected)
Processed 200 total records

(1 rows affected)
Processed 300 total records
...
Run Code Online (Sandbox Code Playgroud)

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

UPDATE

此链接提供更多命令行选项和详细信息,例如用户名和密码:

https://dba.stackexchange.com/questions/44101/importing-sql-server-database-from-a-sql-file


Nei*_*l N 28

如果你在谈论一个真正的数据库(一个mdf文件),你会想到Attach

.sql文件通常使用SQL Server Management Studio运行.它们基本上是保存的SQL语句,因此可以是任何东西.你不"导入"它们.更确切地说,你"执行"它们.即使脚本可能确实插入数据.

另外,为了扩展Jamie F的答案,除非你知道它在做什么,否则不要对你的数据库运行SQL文件.SQL脚本可能与未经检查的exe一样危险


mar*_*c_s 12

  1. 启动SQL Server Management Studio
  2. 连接到您的数据库
  3. 文件>打开>文件并选择您的文件
  4. 执行它

  • 这不适用于> 250MB的文件:( (5认同)
  • 当打开/执行包含大量语句的文件时,SQL Server 会进行转储。你可能会认为这是它擅长的事情。 (3认同)