Computer Hardware Forum - TweakPC

Computer Hardware Forum - TweakPC (https://www.tweakpc.de/forum/)
-   Programmiersprachen (https://www.tweakpc.de/forum/programmiersprachen/)
-   -   Script für MS SQL schreiben (https://www.tweakpc.de/forum/programmiersprachen/64533-script-fuer-ms-sql-schreiben.html)

Deus 13.11.2008 16:21

Script für MS SQL schreiben
 
Hi,

ich muss für unseren MS SQL Server ein Script in der Powershell schreiben.
Ich habe mich nun ein paar Tage mit der Powershell außeinander gesetzt und kann sie nun bedienen und weiß auch wie Scripte geschrieben werden.
Das Script soll folgendes ausführen:

Es soll eine auflistung aller aller Datenbanken eines MS SQL Servers anzeigen und diese Liste dann in eine txt Datei speichern.

Leider hab ich keine ahnung wie ich damit beginnen soll und welche Befehle ich dafür benötige.

Um Hilfe wäre ich sehr Dankbar

Gruß
Deus

Joshua 13.11.2008 16:50

AW: Script für MS SQL schreiben
 
Um mit MS SQL auf der Kommandozeile zu arbeiten, musst du dir erstmal die passenden Clienttools auf deinem Rechner installieren. Und dann gibts nur einen Befehl: osql

Cheers,
Joshua

Exit 13.11.2008 19:26

AW: Script für MS SQL schreiben
 
Powershell sagt mir jetzt zwar gar nix - aber das wäre der SQL Befehl dazu:

[code]select * from master..sysdatabases;[/code]der listet Dir alle Datenbanken auf, welche zu dem SQL Server gehören.

Wenn Du nur den Namen brauchst, dann so:

[code]select name from master..sysdatabases;[/code]

Exit 13.11.2008 19:35

AW: Script für MS SQL schreiben
 
Habe mal ein bisschen weiter gesucht - und folgender "Powershell" Script macht schon fast alles was Du brauchst.

[url=http://www.microsoft.com/technet/scriptcenter/scripts/sql/dbmgmt/default.mspx?mfr=true]Microsoft Corporation[/url]

Deus 14.11.2008 13:22

AW: Script für MS SQL schreiben
 
Hi,

danke für die schnelle Antwort.
Ich habe es mir so vorgestellt:
Das ich über die Powershell auf den MS SQL gehe und dann das Script ausführe.
Ich weiß wie ich mit der Powershell auf den MS SQL komme, das problem ist, was muss ich in das Script schreiben.
Wenn ich auf dem MS SQL bin muss ich ja nur: select name from sysdatabases where name like 'db%' eingeben.
Die frage ist wie setz ich das für ein Powershell Script um?

Gruß
DaDeus

Deus 01.12.2008 15:14

AW: Script für MS SQL schreiben
 
So habe es jetzt mit folgendem Script hinbekommen:

$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = "Server=Servername;Database=$DATABASE;Integrated Security = True"
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = "select name from sysobjects where type='u'"
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$SqlConnection.Close()
$DataSet.Tables[0]

das gibt mir die Tabellen der einzelnen Datenbanken aus.
Und dieses Script gibt mir die Datenbanken aus:

[reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Smo")
$Server = new-object ("Microsoft.SqlServer.Management.Smo.Server") "Servername"
foreach($database in $Server.databases) {$database.name}

Nun muss ich die Datenbanken detachen. Hat jemand eine Idee wie ich das mit der Powershell machen kann??

Gruß
DaDeus


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:39 Uhr.

Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.