Kann ich mit PHP in eine Access Datenbank Schreiebn ?
Kann ich mit PHP in eine Access Datenbank Schreiben ?
Ich hab einen ODBC Treiber bereits eingerichtet. Lesen ist auch kein Problem, jetzt würde ich gerene in meine Access Datenbank auch schreiben.
Bin am verzweifeln
Gruß
Keksprinz
Ich hab einen ODBC Treiber bereits eingerichtet. Lesen ist auch kein Problem, jetzt würde ich gerene in meine Access Datenbank auch schreiben.
Bin am verzweifeln
Gruß
Keksprinz
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 12858
Url: https://administrator.de/contentid/12858
Ausgedruckt am: 23.11.2024 um 04:11 Uhr
12 Kommentare
Neuester Kommentar
Hallo keksprinz,
also Google meint das ginge:
http://www.php-resource.de/forum/showthread/t-45940.html
Eigene Erfahrungen habe ich in dieser Richtung keine.
Gruß Frank
also Google meint das ginge:
http://www.php-resource.de/forum/showthread/t-45940.html
Eigene Erfahrungen habe ich in dieser Richtung keine.
Gruß Frank
Hallo!
Du kannst lesen, also ist die Verbindung zur Datenbank in Ordnung. Deshalb sollte auch ein Schreibzugriff grundsätzlich funktionieren.
Liegt das Problem jetzt daran, dass Du nicht weißt, wie man etwas mit PHP in die Datenbank schreibt oder ist deine Frage, ob ein Schreibzugriff grundsätzlich mit Access klappt?
Wenn Du es noch nicht versucht hast, ist mir etwas unklar, wo das Problem liegt.
Mac
Du kannst lesen, also ist die Verbindung zur Datenbank in Ordnung. Deshalb sollte auch ein Schreibzugriff grundsätzlich funktionieren.
Liegt das Problem jetzt daran, dass Du nicht weißt, wie man etwas mit PHP in die Datenbank schreibt oder ist deine Frage, ob ein Schreibzugriff grundsätzlich mit Access klappt?
Wenn Du es noch nicht versucht hast, ist mir etwas unklar, wo das Problem liegt.
Mac
Hallo!
Irgendwie schaffst Du es, meinen Fragen geschickt auszuweichen.... Naja, ich versuche es mal weiter.
Es sieht eher nach einem SQL-Problem aus, da Du anscheinend Daten auslesen kannst, aber nicht weißt, wie man Daten in die Datenbank schreibt.
Schick mal deinen Code für den Verbindungsaufbau zur Datenbank und zum Auslesen von Daten. Ich schätze mal, das tust Du mit einem Select-Befehl.
In SQL werden Daten mit folgenden Befehlen in eine DB geschrieben (habe einige Parameter/Optionen weggelassen!!!):
UPDATE tabelle
SET spalten_name1=ausdruck1, [spalten_name2=ausdruck2, ...]
[WHERE where_definition]
INSERT [INTO] tabelle [(spalten_name,...)]
VALUES (ausdruck,...),(...),...
Schaue dazu mal in die Hilfe von Access. Du könntest auch mit Access eine Abfrage erstellen und Dir dann die SQL-Syntax ansehen! Aber meine Accesszeit ist schon etwas her, deshalb kann ich Dir da nicht besser helfen.
Tschau
Mac
Irgendwie schaffst Du es, meinen Fragen geschickt auszuweichen.... Naja, ich versuche es mal weiter.
Es sieht eher nach einem SQL-Problem aus, da Du anscheinend Daten auslesen kannst, aber nicht weißt, wie man Daten in die Datenbank schreibt.
Schick mal deinen Code für den Verbindungsaufbau zur Datenbank und zum Auslesen von Daten. Ich schätze mal, das tust Du mit einem Select-Befehl.
In SQL werden Daten mit folgenden Befehlen in eine DB geschrieben (habe einige Parameter/Optionen weggelassen!!!):
UPDATE tabelle
SET spalten_name1=ausdruck1, [spalten_name2=ausdruck2, ...]
[WHERE where_definition]
INSERT [INTO] tabelle [(spalten_name,...)]
VALUES (ausdruck,...),(...),...
Schaue dazu mal in die Hilfe von Access. Du könntest auch mit Access eine Abfrage erstellen und Dir dann die SQL-Syntax ansehen! Aber meine Accesszeit ist schon etwas her, deshalb kann ich Dir da nicht besser helfen.
Tschau
Mac
Hallo!
Hier das Beispiel um etwas in die DB zu schreiben (ich nehme jetzt nur die entscheidende Zeile):
$query3 = odbc_exec($odbc, "UPDATE x1100pat SET c.per=5 WHERE a.pat=100 ") or die (odbc_errormsg());
Mit dieser Zeile wird der Wert der Zelle c.per in Tabelle x1100pat auf 5 gesetzt und zwar in der Zeile in der a.pat den Wert 100 hat. Dieser SQL-Befehl dienst also dem ÄNDERN der Daten.
Um neue Daten hinzuzufügen bitte wie folgt vorgehen:
$query3 = odbc_exec($odbc, "INSERT INTO x1100pat (a.pat,c.per) VALUES (9,101)") or die (odbc_errormsg());
Damit fügt man einen neuen Datensatz in Tabelle x1100pat in dem die Zelle a.pat den Wert 9 erhält und c.per den Wert 101.
Wie Du siehst, kommt es nur auf den SQL-Befehl an, alles andere bleibt gleich.
Das sollte alles sein! Teile mal mit, ob es geklappt hat! Ich hoffe, ich habe das jetzt auf die Schnelle alles richtig hinbekommen! Aber ich denke, ich habe Dich auf den richtigen Weg gebracht.
Mac
Hier das Beispiel um etwas in die DB zu schreiben (ich nehme jetzt nur die entscheidende Zeile):
$query3 = odbc_exec($odbc, "UPDATE x1100pat SET c.per=5 WHERE a.pat=100 ") or die (odbc_errormsg());
Mit dieser Zeile wird der Wert der Zelle c.per in Tabelle x1100pat auf 5 gesetzt und zwar in der Zeile in der a.pat den Wert 100 hat. Dieser SQL-Befehl dienst also dem ÄNDERN der Daten.
Um neue Daten hinzuzufügen bitte wie folgt vorgehen:
$query3 = odbc_exec($odbc, "INSERT INTO x1100pat (a.pat,c.per) VALUES (9,101)") or die (odbc_errormsg());
Damit fügt man einen neuen Datensatz in Tabelle x1100pat in dem die Zelle a.pat den Wert 9 erhält und c.per den Wert 101.
Wie Du siehst, kommt es nur auf den SQL-Befehl an, alles andere bleibt gleich.
Das sollte alles sein! Teile mal mit, ob es geklappt hat! Ich hoffe, ich habe das jetzt auf die Schnelle alles richtig hinbekommen! Aber ich denke, ich habe Dich auf den richtigen Weg gebracht.
Mac