hallo ,
ich beschäftige mich gerade mit der MySQL UDF - mit libmySQL.dll!
hier benötige ich ein paar beispiele für eine insert bzw. update in eine tabelle!
habe mal meine vorherige anfrage als zitat eingefügt!
kann mir da jemand mit paar beispielen helfen?
danke
gruß gmmg
Alles anzeigenhallo zusammen,
habe mir gerade die mysql udf angesehen, weil ich eine lösung suche daten in eine DB automatisiert zu schreiben bzw. wenn vorhanden updaten ...
zum testen habe ich die DB cdcol von xampp benutzt!zugriff, daten lesen funktioniert ...
folgende sind ja enthalten:
"Beauty","Ryuichi Sakamoto","1990","1"
"Goodbye Country (Hello Nightclub)","Groove Armada","2001","4"
"Glee","Bran Van 3000","1997","5"folgende möchte ich aus eine txt.hinzufügen (das einlesen der datei in ein array ist kein problem)
(namen nur als beispiel, stehen aber so formatiert in einer täglichen datei)
---------------------------------------
Horsti;Horst Köhler;1977;1
Angie;Angela Merke;1978;1
---------------------------------------wie bekomme ich es jetzt hin, die daten einzufügen bzw. wenn vorhanden ein update auf diese zu machen?
also ein Insert bzw. UpdateSpoiler anzeigen
[autoit][/autoit] [autoit][/autoit] [autoit]
#cs ----------------------------------------------------------------------------AutoIt Version: 3.2.8.1 (beta)
[/autoit] [autoit][/autoit] [autoit]
Author: Prog@ndyScript Function:
[/autoit] [autoit][/autoit] [autoit]
MySQL-Plugin Demo Script#ce ----------------------------------------------------------------------------
[/autoit] [autoit][/autoit] [autoit]#include <array.au3>
[/autoit] [autoit][/autoit] [autoit]
#include "mysql.au3"; db verbindungsvariablen
[/autoit] [autoit][/autoit] [autoit]
$adress = "127.0.0.1"
$user = "root"
$pass = ""
$dbname = "cdcol"; MYSQL starten, DLL im PATH (enthält auch @ScriptDir), sont Pfad zur DLL angeben. DLL muss libmysql.dll heißen.
[/autoit] [autoit][/autoit] [autoit]
_MySQL_InitLibrary()
If @error Then Exit MsgBox(0, '', "")
;MsgBox(0, "DLL Version:",_MySQL_Get_Client_Version() & @CRLF & _MySQL_Get_Client_Info())$MysqlConn = _MySQL_Init()
[/autoit] [autoit][/autoit] [autoit]; verbinden mit XAMPP cdcol
[/autoit] [autoit][/autoit] [autoit]
$connected = _MySQL_Real_Connect($MysqlConn, $adress, $user, $pass, $dbname)
If $connected = 0 Then Exit MsgBox(16, 'Connection Error', _MySQL_Error($MysqlConn))$query = "SELECT * FROM cds"
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_MySQL_Real_Query($MysqlConn, $query)$res = _MySQL_Store_Result($MysqlConn)
[/autoit] [autoit][/autoit] [autoit]
$fields = _MySQL_Num_Fields($res)
$rows = _MySQL_Num_Rows($res)
;MsgBox(0, "", $rows & "-" & $fields)$row1 = _MySQL_Fetch_Row_StringArray($res)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_ArrayDisplay($row1)
; Zugriff
MsgBox(0, '', "Zugriff Methode 2 - Reihe für Reihe")
_MySQL_Data_Seek($res, 0) ; nur zum Zurücksetzen an den Anfang der Abfrage
Do
$row1 = _MySQL_Fetch_Row_StringArray($res)
If @error Then ExitLoop
_ArrayDisplay($row1)
Until @error; Abfrage freigeben
[/autoit] [autoit][/autoit] [autoit]
_MySQL_Free_Result($res); Verbindung beenden
[/autoit]
_MySQL_Close($MysqlConn)
; MYSQL beenden
_MySQL_EndLibrary()danke
gruß gmmg
Alles anzeigenDas hat jetzt nicht direkt mit der UDF was zu tin, sondern mit SQL
Du musst die Daten einlesen, mit _MySQL_Real_Escape_String Datenbank sicher machen und dann eine Querystring zusammenbauen. Diesen führst du dann mit _MySQL_Real_Query aus.
Am einfachsten machst du einen REPLACE-Befehl und nimmst z.B. den Benutzernamen als einzigartigen Schlüssel (UNIQUE KEY, das muss beim erstellen der Tabelle angegeben werden).
Weiter MySQL-Grundalgen findest du hier:
http://openbook.galileocomputing.de/dreamweaver8/24_kap24_001.htm
http://dev.mysql.com/doc/refman/5.1/de/replace.html
http://dev.mysql.com/doc/refman/5.1…-duplicate.html
Edit: Wenn du dazu mehr Hilfe brauchst, ist eventuell ein neuer Thread besser geeignet.