ERLEDIGT
NEIN
NEIN
ANTWORTEN
20
20
ZUGRIFFE
2501
2501
EMPFEHLEN
-
08.06.09 09:59 #1
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Moin moin,
hab wieder einmal ein Problem
.
Und zwar habe ich in meiner Access-Datenbank eine Tabelle in der eine Spalte vom Typ DateTime ist. Wenn ich jetzt einen Datensatz speichern möchte geht es mitwunderbar, aber mitCode :1
"INSERT INTO Daten(Datum) VALUES('" + DateTime.Today.ToString() + "');";nicht, obwohl es der gleiche String wäre. (einfach mit MessageBox.Show() ausprobiert)Code :1
"INSERT INTO Daten(Datum) VALUES('" + this.dateTimePicker1.Value.ToString() + "');";
Kann mir jemand sagen was ich falsch mache?
MfG, MaxGuck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
-
09.06.09 09:11 #2
- Registriert seit
- Jan 2005
- Ort
- Frankfurt am Main
- Beiträge
- 297
Wie schiebst du denn die Daten in die Datenbank? Wieso arbeitest du nicht mit Parametern?
Ich habe mal gelernt:
Benutze für variable Inhalte eines SQL-Befehls niemals String-Verknüpfung, sondern immer DbParameter!
Macht zwar ein wenig mehr arbeit, erhöht aber die Sicherheit...
Wenn ich davon ausgehe, dass du mit einem DbCommand-Objekt arbeitest, dann ist das relativ einfach:
Code :1 2 3 4 5 6 7 8 9 10
using(DbCommand myDbCmd = getDbCommand()) // Erstellen des DbCommands implementieren { myDbCmd.CommandText = "INSERT INTO myTab (dateTimeField) VALUES (@dateParam)"; DbParameter dbP = new DbParameter("dateParam", DbType.DateTime); //Oder so ähnlich myDbCmd.Parameters.Add(dbP); myDbCmd.ExecuteNonQuery(); }
...und schon bist du dein Problem los!http://dirkgoldecker.spaces.live.com
. Microsoft Certified Technology Specialist
. Microsoft Certified Professional Developer
|-> Web Applications
-
10.06.09 08:47 #3
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Habs gerade ausprobiert... Funktioniert aber auch nicht... Er bringt immer noch eine Fehlermeldung:
Verwende übrigends den Namspace System.Data.OleDb...Code :1
Unverträglicher Datentyp in Ausdruck
MfG, MaxGuck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
-
10.06.09 09:14 #4
- Registriert seit
- Jan 2005
- Ort
- Frankfurt am Main
- Beiträge
- 297
Kannst du mal ein bißchen Code posten?
http://dirkgoldecker.spaces.live.com
. Microsoft Certified Technology Specialist
. Microsoft Certified Professional Developer
|-> Web Applications
-
10.06.09 09:18 #5
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Na klar...
Code :1 2 3 4
[SIZE=2] cmd = ConnectCommand(); cmd.CommandText = [/SIZE][SIZE=2][COLOR=#a31515][SIZE=2][COLOR=#a31515]"DELETE FROM Daten WHERE ArbeiterID = "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + aID + [/SIZE][SIZE=2][COLOR=#a31515][SIZE=2][COLOR=#a31515]" AND Datum=@dateparam;";[/COLOR][/SIZE][/COLOR][/SIZE] [SIZE=2][COLOR=#a31515][COLOR=black]cmd.Paramters.Add("[/COLOR]dateparam[COLOR=black]", this.dtp_datum.value);[/COLOR][/COLOR][/SIZE]Guck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
-
10.06.09 09:29 #6
- Registriert seit
- Jan 2005
- Ort
- Frankfurt am Main
- Beiträge
- 297
Also zuerst einmal: Wenn Parameter, dann alles Parameter
:
Code :1 2 3 4 5 6
[SIZE=2]cmd = ConnectCommand(); cmd.CommandText = [/SIZE][SIZE=2][COLOR=#a31515][SIZE=2][COLOR=#a31515]"DELETE FROM Daten WHERE ArbeiterID=@aID[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][COLOR=#a31515][SIZE=2][COLOR=#a31515] AND Datum=@dateparam;";[/COLOR][/SIZE][/COLOR][/SIZE] [SIZE=2][COLOR=#a31515][COLOR=black]cmd.Paramters.Add("[/COLOR]dateparam[COLOR=black]", this.dtp_datum.value); [/COLOR][/COLOR][/SIZE][SIZE=2][COLOR=#a31515][COLOR=black]cmd.Paramters.Add("aID[/COLOR][COLOR=black]", aID); [/COLOR][/COLOR][/SIZE]
...vielleicht lag es ja an der ArbeiterID - ist das ein varchar oder ein int in der DB?http://dirkgoldecker.spaces.live.com
. Microsoft Certified Technology Specialist
. Microsoft Certified Professional Developer
|-> Web Applications
-
10.06.09 09:32 #7
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Nö an der aID liegts nicht... Bin mir da so sicher weil die Query vorher gegangen is... Aber eben nicht mit diesem DateTime-Object...
das Feld ArbeiterID is ein VARCHAR(20) Feld...Code :1 2 3 4
[SIZE=2] cmd = ConnectCommand(); cmd.CommandText = [/SIZE][SIZE=2][COLOR=#a31515][SIZE=2][COLOR=#a31515]"DELETE FROM Daten WHERE ArbeiterID = "[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2] + aID + [/SIZE][SIZE=2][COLOR=#a31515][SIZE=2][COLOR=#a31515]" AND Datum=Date();"[/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2]; [/SIZE]
Guck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
-
10.06.09 09:48 #8
- Registriert seit
- Jan 2005
- Ort
- Frankfurt am Main
- Beiträge
- 297
...und das Feld Datum ist ein DateTime nehm ich mal an...
Ist das hier ein DateTime-Objekt oder ein String:
Code :1 2
[SIZE=2][COLOR=#a31515][COLOR=black]this.dtp_datum.value [/COLOR][/COLOR][/SIZE]
Sorry, is noch früh und ich hatte noch keinen Kaffee - das Problem ist bestimmt offensichtlich aber ich sehs noch nicht
Hab gerade den Thread noch gefunden:
http://www.eggheadcafe.com/conversat...eadid=33182681
vielleicht bringt dich das weiter - gleiches Problem wie bei dir!Geändert von M4st3r (10.06.09 um 09:52 Uhr)
http://dirkgoldecker.spaces.live.com
. Microsoft Certified Technology Specialist
. Microsoft Certified Professional Developer
|-> Web Applications
-
10.06.09 10:01 #9
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Der Thread hat mir jetzt nicht geholfen... leider...
Die Variable dtp_datum.Value ist der Wert von meinem DateTimePicker dtp_datum... Der Value sieht so aus: 10.06.2009 00:00:00...
Und in der Datenbank hab ich das gleiche Format... Deswegen versteh ich nicht wieso er mir diese Fehlermeldung bringt...Guck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
-
10.06.09 10:21 #10
- Registriert seit
- Jan 2005
- Ort
- Frankfurt am Main
- Beiträge
- 297
Ich habs mal "nachgebaut" und in den Anhang gepackt. Scheint zu laufen - schaus dir mal an. Benutze zwar kein OleDB, ist aber vom Prinzip her das gleiche...
Geändert von M4st3r (10.06.09 um 11:06 Uhr)
http://dirkgoldecker.spaces.live.com
. Microsoft Certified Technology Specialist
. Microsoft Certified Professional Developer
|-> Web Applications
-
10.06.09 10:24 #11
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Kann die Datei nicht öffnen... Sie ist fehlerhaft sagt Winzip
...
Guck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
-
10.06.09 10:34 #12
- Registriert seit
- Jan 2005
- Ort
- Frankfurt am Main
- Beiträge
- 297
Probier nochmal, hab die Datei aktualisiert...
http://dirkgoldecker.spaces.live.com
. Microsoft Certified Technology Specialist
. Microsoft Certified Professional Developer
|-> Web Applications
-
10.06.09 10:38 #13
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Ich kann sie jetzt zwar mit 7zip öffnen aber es beinhaltet nur eine Datei und die ist ohne Endung... was ist das für eine Datei?
Guck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
-
10.06.09 10:46 #14
- Registriert seit
- Jan 2005
- Ort
- Frankfurt am Main
- Beiträge
- 297
Wie nur eine Datei? Warte, ich schieb sie auf meinen Server und schick dir ne PN
http://dirkgoldecker.spaces.live.com
. Microsoft Certified Technology Specialist
. Microsoft Certified Professional Developer
|-> Web Applications
-
10.06.09 10:56 #15
- Registriert seit
- Feb 2008
- Ort
- Pocking (Bayern)
- Beiträge
- 207
Was ist denn DbProviderHelper für eine Klasse bzw. Namespace?
Hab ich noch nie gehört oder verwendet...
Guck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.;)
Ähnliche Themen
-
DateTime - Format vergewaltigt sich selbst
Von Manii im Forum Visual Basic 6.0Antworten: 6Letzter Beitrag: 27.07.07, 02:54 -
DateTime anderes Format ausgeben?
Von heiko263 im Forum .NET CaféAntworten: 3Letzter Beitrag: 08.09.05, 11:51 -
datetime format
Von [planlos]Shorty im Forum PHPAntworten: 1Letzter Beitrag: 11.03.05, 01:11 -
DateTimePicker mit Custom-Format
Von Rentierchen im Forum .NET ArchivAntworten: 4Letzter Beitrag: 26.10.04, 15:28 -
datetime problem mit 12h format
Von derGugi im Forum Relationale DatenbanksystemeAntworten: 0Letzter Beitrag: 22.04.03, 16:01





Zitieren
Login





