Hallo Godlikerz
Hier mein 2. Guide.
Ich möchte euch mit diesem Guide die MySQL Funktionen von AutoIT zeigen.
Los gehts dann auch mal.
Vorbereitung:
Ladet euch zuerst folgendes Paket herunter: DOWNLOAD MYSQLPAKET. Enthalten ist die MySQL.au3 eine UDF. Packt sie einfach ins Includeverzeichnis von autoit.
Installiert wird dabei nur der MySQL ODBC Treiber, damit man überhaupt mit AutoIT MySQL Aufgaben ausführen kann.
Damit wäre die Vorbereitung abgeschlossen.
Script vorbereiten
In jedes Script, dass mit MySQL arbeitet kommt ein
damit man die Funktionen der UDF nutzen kann.
Nun die ganzen Funktionen die mir bekannt sind.
Außerdem fügt folgende Angaben in euer Script ein oder benutzt eine .ini
$UserName = "autoit" ;MySQL User
$Password = "password" ;MySQL Passwort
$Database = "dcot" ;Database
$MySQLServerName = "localhost" ;Hostname oder IP
$SQLInstance = _MySQLConnect($UserName,$Password,$Database,$MySQLServerName) ;enthält dann eine Instanz eurer DB
[feld="Hinweis zum @error-Flag"]Wenn alles klappt, dann ist dieser Wert 0. Ist er 1, dann gibt es ein Connectionproblem, bei dem Wert 2 ist der ODBCtreiber nicht installiert.[/feld]
Geschlossen wird die Verbindung übrigens mit
1. Auslesen von Dateien und anzeigen
Das Auslesen von Daten aus der DB erfolgt mit folgendem Code. In diesem Beispiel wollen wir aus der Tabelle Accounts alle IDs und den dazugehörigen Account auslesen. Dies wird durch folgenden Code errreicht:
$SQLCode = "SELECT * FROM accounts" ;wählt aus der Tabelle accounts aus
$TableContents = _Query($SQLInstance,$SQLCode) ;führt ein Query aus mit der vorhergehenden Variable $SQLInstance, die ja eine Instanz der DB enthält
Nun wollen wir eine MessageBox mit unseren Daten erstellen. Nehmt dazu folgenden Code:
With $TableContents
While Not .EOF
$NameList &= .Fields ("id").value & " " & .Fields ("username").value & @CRLF
.MoveNext
WEnd
EndWith
MsgBox(0,"Accountliste",$NameList) ;Erklären kann ich nicht viel, außer, dass die Variable $TableContent benutzt wird.
2. Einträge hinzufügen
Am besten man erstellt zwei Arrays, damit alles einfacher wird.
Dim $ColumnNames[7]
$ColumnNames[0]= "id"
$ColumnNames[1]= "username"
$ColumnNames[2]= "password"
$ColumnNames[3]= "accesslevel"
$ColumnNames[4]= "logged_in"
$ColumnNames[5]= "channelnum"
$ColumnNames[6]= "bankpassword"
Dim $NewAccounts[7]
$NewGuest[0]= ""
$NewGuest[1]= ""
$NewGuest[2]= ""
$NewGuest[3]= ""
$NewGuest[4]= ""
$NewGuest[5]= ""
$NewGuest[6]= ""
Alles anzeigen
Füllt einfach die "" Zeichen so aus, wie ihr es braucht. Es ist wichtig, dass am Ende immer eine leere Variable ist. Also macht die Arrays immer um eins höher als ihr sie braucht
Danach folgt ein
_AddRecord($SQLInstance,"accounts",$ColumnNames,$NewAccounts) ;fügt die Infos im Array $NewAccounts zur DB hinzu in die Tabelle accounts.
3. Einträge löschen
Zum löschen von Einträgen, nehmt einfach nochmal die Arrays aus 1. .
Danach benutzt folgenden Code:
$TableName = "accounts" ;Name der Tabelle aus der der Einträg gelöscht wird
$Column = "username" ;Spalte anhand der der Eintrag identifiziert wird
$RecordID = "test" ;Inhalt der Zeile, die gelöscht werden soll
_DeleteRecord($SQLInstance,$TableName,$Column,$RecordID) ; löscht in diesem Beispiel den User test, ihr könnt auch jeden anderen nehmen
4. Weitere Funktionen
* _CreateTable ;Erstellt eine Tabelle in der DB
* _CreateColumn ;erstellt eine neue Tabelle in der DB
* _DropCol ;Löscht eine Zeile aus der DB
* _DropTbl ;Löscht eine Tabelle aus der DB
* _CountRecords ; gibt die Nummer von Einträgen zurück, die einem bestimmten Wert entsprechen
* _CountTables ;gibt die Anzahl der Tabellen aus, die in der DB enthalten sind
* _GetColNames ;gibt ein Array zurück mit der Nummer der Spalten in einer Tabelle
* _GetTblNames ;gibt ein Array mit der Nummer der ganzen Tabellen im ersten Element des Arrays und die Namen der Tabellen zurück
* _GetColVals ;Gibt alle Einträge in einer Spalte der Tabelle zurück
* _GetColCount ; Gibt die Anzahl der Spalten in einer Tabelle zurück
* _GetColType ;gibt den Datentyp einer Spalte der Tabelle aus
* _GetDBNames ;Gibt im ersten Arrayelement die Nummer der Datenbanken aus und alle ihre Namen im angegeben Server
* _ChangeCon ;Wechselt die Verbindung um einen anderen Benutzernamen,Passwort,Host oder Datenbank zu nutzen
Alles anzeigen
Dies war mein Guide über die MySQLfunktionen, die in der UDF enthalten sind.
Dort kann man alles nochmal nachlesen Über Feedback würde ich mich freuen.