Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

MS SQL 2005 express DateTime Felder mit VBA beschreiben

Begonnen von fo_juergen, Dezember 29, 2011, 15:38:38

⏪ vorheriges - nächstes ⏩

fo_juergen

Hallo Forumsmitglieder,

habe eine Problem mit dem schreiben des aktuellen Datums und der Zeit in ein DateTime - Feld
in einer MS SQL 2005 Datenbank,das Feld MWCounter wird geschrieben, aber das Feld MWDateTime mit Datum und Zeit nicht.

Der gleiche String funktioniert aber bei einer MySql Datenbank, sind die Datetime Formate von MySQL und MS SQL verschieden?


Mein Code:
strDate = Format(Now, "\#yyyy\-mm\-dd hh:mm:ss#")

strSql = "insert into dbo_T_LoggingData(MWCounter,MWDateTime) " & _
            "values(" & Wert1 & ", " & strDate & ");"
DoCmd.SetWarnings False
DoCmd.RunSQL strSql
DoCmd.SetWarnings True

Gruß Jürgen

DF6GL

Hallo,

versuch mal:

strDate = Format(Now, "yyyymmdd hh:mm:ss")


und

"values(" & Wert1 & ", '" & strDate & "');"
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

fo_juergen

@DF6GL,

danke für die schnelle Antwort, schreibt immer noch keine Werte in die Tabelle...?

kann es an dem SQL Server liegen?

fo_juergen

Hallo

mit folgendem Code kommt auch eine Fehlermeldung, siehe Anhang

strDate = Format(Now, "yyyymmdd hh:mm:ss#")
       strSql = "insert into dbo_T_LoggingData(MWCounter,MWDateTime) " & _
            "values(" & Wert1 & ", " & strDate & ");"
           
        DoCmd.SetWarnings False
        DoCmd.RunSQL strSql
        DoCmd.SetWarnings True


     

[Anhang gelöscht durch Administrator]

daolix

ohne mich auszukenne aber fehlt da nicht ein \ als vorletztes Zeichen in der Iso-Formatierung?

strDate = Format(Now, "\#yyyy\-mm\-dd hh:mm:ss\#")

DF6GL

Hallo,

was sagen die "Warnings" ?

Lass die mal eingeschaltet..

Wenn es dann geht, ersetze Docmd.RunSQL durch Currentdb.Execute.


Weiterhin solltest Du ein ADP-Projekt erstellen und auf den MS-SQL-Server direkt zugreifen

Falls Du ODBC-Verknüpfung aktuell verwendest ,  wird das Datumsformat aber vermutlich so aussehen:


strDate = Format(Now, "\#yyyy\-mm\-dd hh:mm:ss\#")
Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

fo_juergen

Hallo,

die warnings ausgeschaltet, keine Fehlermeldung.

verwende ODBC - Verknüpfung zum MS-SQL-Server

@DF6GL
ZitatWeiterhin solltest Du ein ADP-Projekt erstellen und auf den MS-SQL-Server direkt zugreifen

welche Vorteile hat ein direkter zugriff?

DF6GL

Hallo,

dann aktiviere noch die Bestätigungs-Meldungen in den Optionen bei Bearbeiten/Suchen

Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

database

#8
Hallo,

hier - strDate = Format(Now, "\#yyyy\-mm\-dd hh:mm:ss\#") - kommt 2x 'mm' vor, was m.E. Probleme verursachen wird.

versuch statt dessen mal folgende Sytax:

strDate = Format(Now, "yyyy\-mm\-dd hh:nn:ss")

bzw.

strDate = Format(Now, "yyyymmdd hh:nn:ss")

oder auch

strDate = Format(Now, "mm\/dd\/yyyy hh:nn:ss")


EDIT: die Rauten müssen raus - es funktionieren alle Varianten der Formatierung

daolix

Zitat von: DF6GL am Dezember 29, 2011, 16:08:33
Hallo,

versuch mal:

strDate = Format(Now, "yyyymmdd hh:mm:ss")


und

"values(" & Wert1 & ", '" & strDate & "');"



Diesem Vorschlag von DF6GL jetzt folgend sollte dein code etwa so ausschauen:

strDate = Format(Now, "yyyymmdd hh:mm:ss")
       strSql = "insert into dbo_T_LoggingData(MWCounter,MWDateTime) " & _
            "values(" & Wert1 & ", '" & strDate & "');"
           
        DoCmd.SetWarnings False
        DoCmd.RunSQL strSql
        DoCmd.SetWarnings True


Man beachte hier die eingefärbten Hochkommas: "values(" & Wert1 & ", '" & strDate & "');"


fo_juergen

Hallo,

Problem gelöst, VBA - Code war korrekt, lag an meinem SQL Server.

Danke für die Hilfe.

database

Hallo,

ZitatCode war korrekt, lag an meinem SQL Server

und das obwohl der SQL-Server die Rauten nicht anerkennt  ::)