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
Kommentar vom Moderator Biber am 20.04.2010 um 20:45:23 Uhr
Verschoben von "Programmiersprachen" nach "Datenbanken".
GELÖST

MS SQL Abfrage mit AutoIT

Frage Entwicklung Datenbanken

Mitglied: mikroschwamm

mikroschwamm (Level 1) - Jetzt verbinden

22.03.2010, aktualisiert 20.04.2010, 14615 Aufrufe, 2 Kommentare

Ausgabe der Abfrage mit einer AutoIT UDF

Hallo zusammen,

ich bin gerade dabei ein AutoIT Script zu entwerfen, mit dem ich auf einem MS SQL Server Abfragen durchführen kann. Ich habe entzwischen mit Hilfe von diversen Foren eine UDF (user definied function) in der ich die Funktionen für Verbindung, Query und Verbindungsabbau definiert habe.
Jetzt kommt das Problem:
Ich würde gerne das Ergebnis des Querys in einer Messagebox ausgeben, allerdings funktioniert das nicht. Der Body der Meldung bleibt leer, obwohl die Variable $query nicht = NULL ist??
Verbinden kann ich mich auf den Server und einen query kann ich auch absetzen.

Hier mal meine UDF:

;Stellt die verbindung her
;Beispiel: $sql = _SQLCon(127.0.0.1, user, pass, MyDB)

Func _SQLCon($scIP, $scUser, $scPass, $scDB)
$sqlCon = ObjCreate("ADODB.Connection")
$sqlCon.Open("Provider=SQLOLEDB; Data Source=" & $scIP & "; User ID=" & $scUser & "; Password=" & $scPass & "; database=" & $scDB & ";")
Return $sqlCon
EndFunc

;Funktion für Query
;Beispiel: _SQLQuery($sql, "INSERT INTO (id, name, age) VALUES (1, admin, 55)")
Func _SQLQuery($iSQLCon, $iQuery)
If IsObj($iSQLCon) Then
Return $iSQLCon.execute($iQuery)
EndIf
EndFunc

Beschreibung: Beendet die Verbindung zum Microsoft SQL Server
Func _SQLEnd($sqlCon)
If IsObj($sqlCon) Then
$sqlCon.close
EndIf
EndFunc

Hier mein Abfrage Script:

#include "_MSSQLFunction.au3"
$adCN = ObjCreate("ADODB.Connection")
$sql_server="127.0.0.1\TESTINSTANZ"
$sql_db="TestDB"
$sql_user="sa"
$sql_pass="Passwort"
$adCN.Open("DRIVER={SQL Server};SERVER=" & $sql_server & ";DATABASE=" & $sql_db & ";uid=" & $sql_user & ";pwd=" & $sql_pass & ";")
$query = $adCN.Execute("SELECT Computername FROM logs WHERE [MAC-Adress]='xx-xx-xx-xx-xx-xx';")
;Ausgabe
MsgBox(0, "Ergebnis", "Computername = " & $query)

Hat jemand eine Ahnung weshalb das so ist? Besten Dank!

Gruß Mikroschwamm
Mitglied: bstefan82
22.03.2010 um 17:55 Uhr
Ich würde mal darauf tippen das query nicht Type string sondern nen adodb.recordset (oder so) ist....
Bitte warten ..
Mitglied: mikroschwamm
23.03.2010 um 08:28 Uhr
wunderbar, es hat geklappt! Vielen Dank! Ich habe folgende Ergänzung vorgenommen...

;Ausgabe

$array = $query.GetRows
If Not IsArray($array) Then
MsgBox(0, 'Array', 'kein Ergebnis')
_close()
EndIf

_ArrayDisplay($array, 'Alle Spalten')
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Windows Server
gelöst MS SQL Express 2008 - Wie kann ich das Logfile verkleinern? (3)

Frage von ChrisR zum Thema Windows Server ...

Datenbanken
gelöst Verschachtelte SQL-Abfrage (4)

Frage von User1000 zum Thema Datenbanken ...

Datenbanken
gelöst SQL-Abfrage und leere Felder vermeiden (12)

Frage von zwangseinweisung zum Thema Datenbanken ...

Heiß diskutierte Inhalte
DSL, VDSL
gelöst DSL 200m verlängern (15)

Frage von Angela44 zum Thema DSL, VDSL ...

LAN, WAN, Wireless
Per Script auf UniFi-controller zugreifen und WPA2-Key ändern (11)

Frage von Winfried-HH zum Thema LAN, WAN, Wireless ...

Windows Server
SBS 2011 Standard virtualisieren (11)

Frage von HeinrichM zum Thema Windows Server ...

Exchange Server
gelöst DHCP Sever MS Server 2012 Problem (10)

Frage von Florian86 zum Thema Exchange Server ...