3Danke
ERLEDIGT
JA
JA
ANTWORTEN
8
8
ZUGRIFFE
324
324
EMPFEHLEN
-
25.11.10 10:37 #1
- Registriert seit
- May 2009
- Beiträge
- 54
Hallo,
ich habe seit wenigen Tagen in mein C# Projekt eine anbindung zu einer MySql Datenbank hergestellt, Lesen/Schreiben geht Ohne Probleme wäre da bloss nich dieses UPDATE was überhaupt nicht gehen will.
Ich möchte mit diesem Update Bewirken das jedesmal wenn sich ein User in meinem Programm Anmeldet in die Datenbank der TIMESTAMP für den letzten Login reinschreibt bzw. Updated.
Hier mein Code für die Update Funktion:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
public void Update(string username) { string Query = "UPDATE users SET Last_Online= 'Test' WHERE username= " + username + ";"; MySqlCommand addUpdate = new MySqlCommand(Query, this.sqlConn); try { addUpdate.ExecuteNonQuery(); } catch (Exception excp) { Exception myExcp = new Exception("Could not Update: " + excp.Message, excp); throw (myExcp); } }
-
25.11.10 11:23 #2
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
Hi.
Was ist denn Last_Online für eine Spalte (Typ)?
Was bekommst du denn für eine Ausnahme?
Du weißt was SQL Injection bedeutet?
GrußCode csharp:1 2 3 4 5 6 7
var query = "update users set last_online = NOW() where username = ?user"; using (var cmd = new MySqlCommand(query, sqlConn)) { cmd.Parameters.add("?user", username); try { cmd.ExecuteNonQuery(); ...
PS: Ups, der Highlighter kennt das C# var Schlüsselwort nicht?
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
25.11.10 11:24 #3
Allgemein würde ich sagen, dass um username (also in dem Anführungszeichen) noch das Hochkomma hinkommt z. B. so:
Code :1
string Query = "UPDATE users SET Last_Online= 'Test' WHERE username= '" + username + "';";
aber besser und genauer kann man helfen wenn du uns sagen könnte was die Exception die du ja fängst als Message ausgibt.
Gruß
RudolfG
PS: Die Lösung von deepthroat ist hier aber tausentmal besser!
Technologien
(Gute) Grundkenntnisse: HTML, CSS
Fortgeschrittene-Kenntnisse: C++/Qt, C# (WinForms, Webservice), SQL
-
25.11.10 11:30 #4
- Registriert seit
- May 2009
- Beiträge
- 54
Danke für die Antworten, aber leider ist die Spalte dann immer noch leer g*
hier der Export von der Spalte:
Code :1
`Last_Online` text NOT NULL,
-
25.11.10 11:41 #5
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
25.11.10 11:44 #6
Funktioniert das Update wenn du es direkt in MySQL ausführst?
What was hard to code should be hard to read, too******
-
25.11.10 11:58 #7
- Registriert seit
- May 2009
- Beiträge
- 54
@ deep, das liegt daran das ich schon ein TIMESTAMP in einer Spalte Benutze, ich denke ich kann nicht mehr als eins haben, und ich bekomme leider keine Fehlermeldung.
@michael wie führe ich das denn aus im Mysql? einfach über PhpMyAdmin in dem Code Fenster?
Edit:
Ja michael es Funktioniert.Geändert von CrimeTime89 (25.11.10 um 12:00 Uhr)
-
25.11.10 12:08 #8
- Registriert seit
- Jun 2005
- Beiträge
- 8.168
If at first you don't succeed, try again. Then quit. No use being a damn fool about it.
-
25.11.10 12:34 #9
- Registriert seit
- May 2009
- Beiträge
- 54
hatte leider den Code an einer Falschen Stelle eingebaut, da wo er nicht erreicht werden konnte, nun habe ich ihn Richtig eingebaut und alles Funktioniert wie es es sollte Danke euch
Ähnliche Themen
-
mySQL Update Problem
Von sugar im Forum Relationale DatenbanksystemeAntworten: 6Letzter Beitrag: 10.04.09, 19:22 -
Problem mit UPDATE (MySQL)
Von UnoDosTres im Forum PHPAntworten: 3Letzter Beitrag: 20.09.05, 13:00 -
MySQL Update-Problem
Von Airis im Forum Relationale DatenbanksystemeAntworten: 0Letzter Beitrag: 19.09.05, 16:04 -
MySql Update Problem
Von kevkev im Forum PHPAntworten: 2Letzter Beitrag: 04.08.05, 23:36 -
MySQL Problem mit Update
Von dragonlord im Forum PHPAntworten: 5Letzter Beitrag: 19.02.05, 19:47





Zitieren

Login





