2016-06-08 13 views
0

Ich habe meine Datenbank mit SQL Management Studio in SQL-Skripts sowohl als einzelne Datei als auch als mehrere Dateien exportiert. In beiden Fällen, wenn ich in VS.net 2015 ein leeres Datenbankprojekt erstelle und "Import ... Script" wähle und entweder mein einziges großes Skript auswähle oder der Ordner mehrerer Skripte keine Artefakte im Projekt erzeugt.Import von SQL-Skripts schlägt immer fehl

Das Protokoll für eine Multi-Datei-Importdatei gibt

08/06/2016 15:33:18 This log contains information about the import operation of the script 'dbo.SOMETABLENAME.Table.sql' into project 'MYPROJECTNAME' on computer 'MYCOMPUTER' by user'philliph. 
08/06/2016 15:33:33 Started importing file: C:\Users\philliph\AppData\Local\Temp\tmp29BA.tmp 
08/06/2016 15:33:33 File name C:\Users\philliph\AppData\Local\Temp\tmp29BA.tmp (size: 5800811) 
08/06/2016 15:33:33 Parsing import script 
08/06/2016 15:34:07 A summary of the import was saved to the following location: MYSOURCELOCATION\Import Script Logs\dbo_FIRSTTABLENAME__20160608023318.log 
08/06/2016 15:34:07 Click Finish to continue... 

und die Protokolldatei für eine einzelne Importdatei gibt keine weitere nützliche Informationen. Ich habe versucht, von SQL Server mit ASCII oder UNICODE-Formaten zu exportieren und die Skripte selbst sehen gut aus. Ich kann direkt aus der Datenbank in das Datenbankprojekt importieren, möchte dies jedoch nicht tun, da ich viele Artefakte der SQL Replication-Datenbank habe, die ich nicht der Quellcodeverwaltung unterstellen möchte, sowie den Skript-Export in Management Studio erlaubt mir, diese herauszufiltern.

Hat es jemand geschafft, aus dem Skript erfolgreich zu importieren, oder gibt es ein Geheimnis dazu? Ich bemerke, dass das Protokoll eine große temporäre Datei zu erstellen scheint, aber es wird gelöscht, sobald das Tool die Verarbeitung abgeschlossen hat (was ein paar Minuten dauert), sodass ich nicht sagen kann, was es enthält.

+0

Ich habe es geschafft, Import von Skript für einmalige neue Objekte zu verwenden, aber noch nie versucht, das ursprüngliche Projekt zu füllen. Dafür habe ich immer entweder einen dacpac oder eine direkte Verbindung benutzt. Der dacpac gab mir tatsächlich einen besseren Erfolg, da Abhängigkeiten ignoriert wurden. –

Antwort

0

Für den Datensatz habe ich nie eine Möglichkeit zum erfolgreichen Importieren von Skripts gefunden. Ich habe versucht, dies zu tun, um den Import der Replikationsartefakte aus meiner Live-Datenbank zu vermeiden. Nach einer Idee, die in http://weblogs.asp.net/gunnarpeipman/using-visual-studio-database-projects-in-real-life veröffentlicht wurde, habe ich das Schema-Vergleichstool verwendet, um einen Vergleich zwischen meiner Live-Datenbank und einem leeren Datenbankprojekt zu erstellen. Mit diesem Tool konnte ich alle Datenbankobjekte herausfiltern, bevor ich den Vergleich mit meinem Datenbankprojekt anwendete.

Obwohl es meine ursprüngliche Frage nicht gelöst hat, könnte diese Problemumgehung für andere nützlich sein.

Verwandte Themen