Wie man eine .sql Datei mit Powershell ausführt?
Ich habe eine .sql
Datei. Ich versuche mich zu übergeben Verbindungszeichenfolge details über ein Powershell-Skript und aufrufen eines .sql
Datei.
War ich auf der Suche und kam mit einem cmdlet Bezug auf Invoke-sqlcmd
. Während ich war auf der Suche nach einem Modul entsprechenden SQL, ich habe keine gefunden in meiner Maschine.
Sollte, installiere ich alles in meine Maschine (der Rechner bereits SQL Server Management Studio 2008 R2), um die Module oder gibt es eine einfache Möglichkeit zum ausführen .sql
- Dateien mit Powershell?
InformationsquelleAutor der Frage Samselvaprabu | 2012-06-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen, um zu sehen, ob SQL-snap-ins vorhanden sind:
Wenn so
dann können Sie etwas wie das hier tun:
InformationsquelleAutor der Antwort CB.
Zitat aus Importieren Sie das SQLPS-Modul auf MSDN,
Also, ja, man könnte die
Add-PSSnapin
Ansatz detailliert von Christian, aber es ist auch nützlich, zu schätzen wissen empfohlen sqlps-Modul-Ansatz.Einfachsten Fall wird davon ausgegangen, dass Sie SQL Server 2012: sqlps ist in der installation enthalten, so dass Sie einfach laden Sie das Modul wie jedes andere (in der Regel in Ihrem Profil) über
Import-Module sqlps
. Sie können überprüfen, ob das Modul auf Ihrem system verfügbar ist mitGet-Module -ListAvailable
.Wenn Sie nicht über SQL Server 2012, dann alle Sie tun müssen, ist download die sqlps Modul in Ihrem Modul-Verzeichnis, so Bekommen-Modul - /Import-Modul wird es finden. Neugierig, Microsoft hat nicht machen dieses Modul zum download zur Verfügung! Jedoch, Chad Miller hat freundlicherweise verpackt die notwendigen Teile und zur Verfügung gestellt dieses Modul herunterladen. Entpacken Sie es unter ...Documents\WindowsPowerShell\Modules " - Verzeichnis und mit dem import fortfahren.
Es ist interessant zu beachten, dass das Modul-Konzept und die Snap-in-Ansatz sind nicht identisch. Wenn Sie laden Sie die Snap-ins dann laufen
Get-PSSnapin
(ohne- Registered parameter, zeigen Sie nur, was Sie geladen haben), sehen Sie die SQL-snapins. Wenn auf der anderen Seite, laden Sie das sqlps-ModulGet-PSSnapin
nicht zeigen, wird die snapins geladen, so dass die verschiedenen blog-Einträge, test für dieInvoke-Sqlcmd
cmdlet " nur die Prüfung snapins werden könnte, was eine falsch-negativ-Ergebnis.2012.10.06 Update
Für die ganze Geschichte über das sqlps-Modul gegen das sqlps-mini-shell vs. SQL Server-snap-ins, werfen Sie einen Blick auf meine zwei-teilige mini-Serie Praktische PowerShell für SQL Server-Entwickler und Datenbankadministratoren vor kurzem veröffentlicht Simple-Talk.com wo habe ich, nach einem Leser-Kommentar, erfolgreich "de-verwirrt" das Problem. 🙂
InformationsquelleAutor der Antwort Michael Sorens
InformationsquelleAutor der Antwort Brent
Hier ist eine Funktion, die ich in meinem PowerShell-Profil für das laden von SQL-snapins:
InformationsquelleAutor der Antwort David Brabant
2008 Server 2008 und 2008 R2
2012 und 2014
InformationsquelleAutor der Antwort emekm