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

Debuggen in Transact SQL, SQL 2005

Frage Entwicklung Datenbanken

Mitglied: 152kg

152kg (Level 1) - Jetzt verbinden

10.02.2011 um 17:51 Uhr, 3467 Aufrufe, 1 Kommentar

Hallo,

ich durfte gerade einen MS SQL Server 2005 üebrnehmen und habe davon relativ wenig Ahnung.
Im Momen versuche ich einen Maintenance Plan hinzubekommen.

Ich möchte im Moment eigenlich nur einen Dateinamen einlesen und diesen weiterverwenden.
Da das nicht klappt, möchte ich mir irgendwie ausgeben lassen, was eingelesen wurde.
Ich habe es mit Print versucht, was zumindest keine Fehler erzeugt. Nur wohin wird die Ausgabe geprintet? Im Output Fenster kommt nichts.
Also habe ich es versucht in eine Textdatei schreiben zu lassen. Geht auch nich wirklich.
Hier mal mein Code:


DECLARE @Dateiname CHAR(350), @Aufruf CHAR(350)
EXEC @Dateiname = xp_cmdshell 'dir D:\Pfad\Zur\Datei\*.bak /b'
set @Aufruf = @Dateiname + ' >> D:\Pfad\Zur\Datei\hallo.txt'
print @Dateiname
EXEC xp_cmdshell @Aufruf

Gibt es bei diesem tollen zusammenklicksystem von SQL 2005 nicht irgendwo einen anständigen Debugger bei dem man Breakpunkte setzen, den Code Schrittweise ausführen und die Variableninhalte zur Laufzeit anschauen kann?
Mitglied: MadMax
11.02.2011 um 12:54 Uhr
Hallo 151kg,

einen anständigen Debugger im Bordwerkzeug vom SQL Server gibt es nicht. im Visual Studio kann man auch Prozeduren debuggen, aber so doll ist das nicht. Da bin ich mit print und select schneller.

Mit welchem Programm machst Du das Ganze denn? Im Management Studio bekommst Du im unteren Bereich die Ausgabe. Da gibt es möglicherweise auch mehrere Register, die print-Ausgabe ist im Register Meldungen.

Das Problem mit der Rückgabe von xp_cmdshell ist, daß da kein einzelner Text zurückgegeben wird, sondern eine Tabelle mit lauter Textzeilen. Das was in Deinem @Dateiname landet, ist der Rückgabecode 0 oder 1, ob die Prozedur erfolgreich war oder nicht. Rückgaben von Prozeduren, die Tabellen zurückgeben bekommst Du folgendermaßen:
01.
declare @tmp table (ausgabe varchar (max)) 
02.
insert into @tmp exec xp_cmdshell 'dir D:\Pfad\Zur\Datei\*.bak /b' 
03.
select * from @tmp
Gruß, Mad Max
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst Update von sql server express 2005 sp4 auf 2008 klappt nicht (11)

Frage von jhaustein zum Thema Windows Server ...

Windows Server
gelöst SQL Server 2016 User CALs auch für ältere SQL-Server-Version nutzbar? (3)

Frage von Jeiko71 zum Thema Windows Server ...

Monitoring
HP Monitoring - SQL auf localhost notwendig? (2)

Frage von hijacker99 zum Thema Monitoring ...

Heiß diskutierte Inhalte
Windows 7
gelöst BOOTMGR is missing (auch nach bootrec -RebuildBcd) (21)

Frage von Mipronimo zum Thema Windows 7 ...

Router & Routing
Tipps für Router (ca. 100 clients, VPN) (20)

Frage von oel-auge zum Thema Router & Routing ...

Windows Userverwaltung
Windows Freigabe: Zugriff auf alle Ordner trotz Sicherheitseinstellungen (18)

Frage von Pandreas zum Thema Windows Userverwaltung ...

Exchange Server
gelöst MS Exchange 2016 - Basicconfig Fragen (16)

Frage von maddig zum Thema Exchange Server ...