Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Ein SQL-Statement auf alle DBs eines Servers oder alle Tabellen einer DB anwenden (MSSQL)

Tipp Entwicklung Datenbanken

Mitglied: MiniStrator

MiniStrator (Level 2) - Jetzt verbinden

14.02.2011 um 19:01 Uhr, 9875 Aufrufe, 1 Kommentar, 1 Danke

'Jeder' musste wahrscheinlich schon einmal ein Statement auf *alle* Datenbanken eines SQL-Servers absetzen. Meist wird dann ein Cursor gebastelt...

Es gibt eine system stored procedure namens sp_msforeachdb. Die klappert alle DBs ab und führt das gewünschte aus.

Damit kann man z.B. alle Userdatenbanken sichern:
01.
EXEC sp_MSForEachDB 'IF DB_NAME((SELECT dbid FROM sysdatabases WHERE [Name]= ''?'')) NOT IN (''tempdb'',''master'',''model'',''msdb'') BACKUP DATABASE [?] TO DISK = N''b:\ackuppfad\?.bak'' WITH NOFORMAT, NOINIT, NAME = N''?-Backupbezeichnung'', SKIP, NOREWIND, NOUNLOAD'
Oder ohne den Select um alle Tabellen zu sichern. Genauso geht das auch mit BACKUP LOG oder irgendwelchen DBCC-sachen

Dies kann man in eine Datei schreiben, sagen wir backup.sql und dann mittels osql.exe (im Bsp. lokal) ausführen:
01.
osql -E -i p:\fad\backup.sql
Hervorragen zum batchen geeignet. In Verbindung mit psexec kriegt man da ein 1A zentral gesteuertes Backup hin, es wird alles nacheinander aufgerufen, man braucht sich um keine Startzeiten mehr zu kümmern, etc. Und alles ohne Zusatzkosten.

Jede Tabelle bedienen geht zum Bleistift so:
01.
use dbname 
02.
go 
03.
 
04.
EXEC sp_MSForEachTable 'SELECT ''?'', COUNT(*) FROM ?'
Vielleicht kann ich hiermit dem ein oder anderen ein bisschen was vereinfachen...

Gruß

MiniStrator
Mitglied: emjott
15.02.2011 um 13:24 Uhr
sehr nettes Scriptchen!

Gruß Emjott
Bitte warten ..
Ähnliche Inhalte
Datenbanken
SQL 2000 DB ist Fehlerverdächtig (3)

Frage von franksig zum Thema Datenbanken ...

Datenbanken
gelöst SQL Statement auseinandernehmen Like (20)

Frage von H41mSh1C0R zum Thema Datenbanken ...

Server
gelöst SQL-Tabelle portieren und dabei Daten konvertieren (1)

Frage von menace zum Thema Server ...

Datenbanken
gelöst MSSQL-Benutzer . Zugriff nur auf 2 Tabellen und 1 View (3)

Frage von Snuffchen zum Thema Datenbanken ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...

Entwicklung
gelöst Tipp für Anfänger- Wie würdet ihr automatischen Mailversand umsetzen? (12)

Frage von Cloudyme zum Thema Entwicklung ...