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, 15017 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 ..
Ähnliche Inhalte
Datenbanken
gelöst MS-SQL Tabellendaten kopieren und dann löschen (5)

Frage von clSchak zum Thema Datenbanken ...

Datenbanken
gelöst SQL Abfrage mit Visual Studio (5)

Frage von specialuser zum Thema Datenbanken ...

Entwicklung
gelöst SQL Abfrage Zeit: JETZT - 30 Sekunden (17)

Frage von Andinistrator1 zum Thema Entwicklung ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Viren und Trojaner
Ransomware .nm4 (14)

Frage von Zyklo92 zum Thema Viren und Trojaner ...

Microsoft Office
+1.000 Ordner in Outlook: Wie besser? (11)

Frage von Matsushita zum Thema Microsoft Office ...

Zusammenarbeit
Administrator Verhalten nach Vertragskündigung (10)

Frage von sysbone zum Thema Zusammenarbeit ...