1

我的数据库有一个 4GB 的 sql 数据脚本。我想执行它,但 SQL Server Management Studio 确实允许我执行它,因为它是一个非常大的文件。

所以我想把这个文件拆分成更小的文件,以便我可以执行它。我用谷歌搜索了它,但没有得到任何好的解决方案。我也使用 HJSplit 来拆分文件,但只有第一个拆分文件格式正确,而其他文件格式不正确,因此无法在 SQL 查询接口中执行。

请帮帮我,我如何在.sql有或没有分割的情况下使用数据执行这个文件?

4

1 回答 1

3

使用sqlcmd工具执行文件..

sqlcmd -S myServer\instanceName -i C:\myScript.sql

或者

sqlcmd -S <server> -i C:\<your file here>.sql -o

只需替换为 SQL 框的位置和脚本的名称。如果您使用的是 SQL 实例,请不要忘记语法是:sqlcmd -S \instance。

以下是您可以传递 sqlcmd 的所有参数的列表:

Sqlcmd            [-U login id]          [-P password]
  [-S server]            [-H hostname]          [-E trusted connection]
  [-d use database name] [-l login timeout]     [-t query timeout] 
  [-h headers]           [-s colseparator]      [-w screen width]
  [-a packetsize]        [-e echo input]        [-I Enable Quoted Identifiers]
  [-c cmdend]            [-L[c] list servers[clean output]]
  [-q "cmdline query"]   [-Q "cmdline query" and exit] 
  [-m errorlevel]        [-V severitylevel]     [-W remove trailing spaces]
  [-u unicode output]    [-r[0|1] msgs to stderr]
  [-i inputfile]         [-o outputfile]        [-z new password]
  [-f  | i:[,o:]] [-Z new password and exit] 
  [-k[1|2] remove[replace] control characters]
  [-y variable length type display width]
  [-Y fixed length type display width]
  [-p[1] print statistics[colon format]]
  [-R use client regional setting]
  [-b On error batch abort]
  [-v var = "value"...]  [-A dedicated admin connection]
  [-X[1] disable commands, startup script, enviroment variables [and exit]]
  [-x disable variable substitution]
  [-? show syntax summary]
于 2013-01-19T14:28:53.483 回答