116 votes

Impossible d'exécuter le script : Mémoire insuffisante pour poursuivre l'exécution du programme.

J'ai un fichier sql de 123 Mo que je dois exécuter sur mon PC local. Mais j'obtiens

Cannot execute script: Insufficient memory to continue the execution of the program

enter image description here

Comment résoudre ce problème ?

5voto

user3228486 Points 51

Si je comprends bien votre problème, vous essayez de restaurer (transact sql) xyz.sql - base de données + schéma. Vous pouvez essayer cette commande qui a fonctionné pour moi :

SQLCMD -U sa -i xyz.sql

5voto

daniele3004 Points 62

Essayez cette étape,

1)Ouvrir PowerShell

2)Ecrire cette commande :

sqlcmd -S PCNAME\SQLEXPRESS -U user -P password -d databanse_name -i C:\script.sql
3)Appuyez sur Retour

-)

enter image description here

4voto

Nimesh khatri Points 325

Le script ci-dessous fonctionne parfaitement :

sqlcmd -s Server_name -d Database_name -E -i c:\Temp\Recovery_script.sql -x

Symptômes :

Lors de l'exécution d'un script de récupération avec l'utilitaire sqlcmd, le message 'Sqlcmd : Erreur : Syntax error at line XYZ near command 'X' in file 'file_name.sql'.' est rencontrée.

Cause :

Il s'agit d'une limitation de l'utilitaire sqlcmd. Si le script SQL contient le signe dollar ($) sous quelque forme que ce soit, l'utilitaire est incapable d'exécuter correctement le script, puisqu'il substitue toutes les variables automatiquement par défaut.

Résolution :

Afin d'exécuter le script qui a un signe dollar ($) sous n'importe quelle forme, il est nécessaire d'ajouter le paramètre "-x" à la ligne de commande.

par exemple

Original : sqlcmd -s nom_serveur -d nom_base de données -E -i c : \Temp\Recovery_script.sql

Fixe : sqlcmd -s nom_serveur -d nom_base de données -E -i c : \Temp\Recovery_script.sql -x

3voto

Parfois, en raison de la taille importante du script et des données, nous rencontrons ce type d'erreur. Le serveur a besoin de suffisamment de mémoire pour s'exécuter et donner le résultat. Nous pouvons simplement augmenter la taille de la mémoire, par requête.

Il vous suffit d'aller dans les propriétés du serveur sql > onglet Mémoire (côté gauche) > Définissez ensuite la limite de mémoire maximale que vous souhaitez ajouter.

De plus, il y a une option en haut, "Résultats vers le texte", qui consomme moins de mémoire que l'option "Résultats vers la grille", nous pouvons aussi choisir l'option "Résultats vers le texte" pour une exécution moins gourmande en mémoire.

1voto

Mahmaood ali Points 139

sqlcmd -S mamxxxxxmu \sqlserverr -U sa -P x1123 -d QLDB -i D:\qldbscript.sql

  • Ouvrez l'invite de commande dans Exécuter en tant qu'administrateur

  • entrez la commande ci-dessus

"mamxxxxxmu" est le nom de l'ordinateur "sqlserverr" est le nom du serveur "sa" est le nom d'utilisateur du serveur "x1123 est le mot de passe du serveur "QLDB" est le nom de la base de données " D:\qldbscript.sql "est le fichier sql script à exécuter dans la base de données.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X