无法执行脚本:内存不足,无法继续执行程序

use*_*567 70 sql t-sql sql-server-2012

我有一个123MB的sql文件,我需要在我的本地PC上执行.但我得到了

Cannot execute script: Insufficient memory to continue the execution of the program
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

如何解决这个问题?

Tha*_*amy 107

使用命令行工具SQLCMD,它在内存上更精简.它很简单:

SQLCMD -d <database-name> -i filename.sql
Run Code Online (Sandbox Code Playgroud)

您需要有效的凭据才能访问SQL Server实例,甚至访问数据库

取自这里.

  • 使用完整凭据,指定db和server:sqlcmd -S <YOUR-SERVER> -U <YOUR-USER> -P <YOUR-PASSWORD> -d <YOUR-DATABASE> -i <YOUR-SQL-FILE-PATH.sql > (20认同)
  • @ChristianFredh每1000次插入后使用GO命令 (3认同)
  • 为可信连接添加`-e` (3认同)
  • 我遇到这个问题:“INSERT 语句中的行值表达式的数量超出了允许的最大行值数(1000 个)。” (2认同)

Ani*_*ngh 25

它可能对你有所帮助!请参阅以下步骤.

sqlcmd -S server-name -d database-name -i script.sql

  • 以管理员身份打开cmd.exe.
  • 创建文档目录.
  • 将您的SQL脚本文件(script.sql)放在documents文件夹中.
  • 使用sqlcmd,server-name,database-name和script-file-name键入查询,如上面突出显示的查询或下面的命令行界面.

在此输入图像描述


小智 8

您还可以简单地增加服务器属性中的每个查询的最小内存值.要编辑此设置,请右键单击服务器名称,然后选择属性>内存选项卡.

我在SSMS 2012中尝试执行30MB SQL脚本时遇到此错误.将值从1024MB增加到2048MB后,我能够运行该脚本.

(这是我在这里提供的答案)

  • 不适用于1.3 GB的脚本。 (3认同)

小智 5

如果我正确理解您的问题,您正在尝试恢复(transact sql)xyz.sql - 数据库+架构.您可以尝试这个对我有用的命令:

SQLCMD -U sa -i xyz.sql
Run Code Online (Sandbox Code Playgroud)


dan*_*004 5

尝试这个步骤,

1)打开PowerShell

2)编写此命令:

sqlcmd -S PCNAME\SQLEXPRESS -U user -P password -d databanse_name -i C:\script.sql
Run Code Online (Sandbox Code Playgroud)

3)按回车键

:-)

在此输入图像描述


小智 5

对于Windows身份验证,请使用此sql cmd

SQLCMD -S TestSQLServer\SQLEXPRESS  -d AdventureWorks2018 -i "d:\document\sql document\script.sql"
Run Code Online (Sandbox Code Playgroud)

注意:如果sql文件路径中有任何空格,请使用“(引号)”

对于SQL Server身份验证,请使用此sql cmd

SQLCMD -S TestSQLServer\SQLEXPRESS -U sa -P sasa  -d AdventureWorks2018 -i "d:\document\sql document\script.sql"
Run Code Online (Sandbox Code Playgroud)

-S TestSQLServer \ SQLEXPRESS:在此指定SQL Server名称

-U sa:用户名(在SQL Server身份验证的情况下)

-P sasa:密码(在SQL Server身份验证的情况下)

-d AdventureWorks2018:数据库名称来到这里

-i“ d:\ document \ sql document \ script.sql”: SQLFile的文件路径


小智 5

我的数据库大于 500mb,然后我使用了以下内容

C:\Windows>sqlcmd -S SERVERNAME -U USERNAME -P PASSWORD -d DATABASE -i C:\FILE.sql
Run Code Online (Sandbox Code Playgroud)

它加载了包括 SP 在内的所有内容

*注意:以管理员身份运行cmd

  • 工作完美。谢谢。注意:-i C:\FILE.sql 必须用引号引起来。-i“C:\FILE.sql” (5认同)