Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Probleme mit INSERT INTO, leeren Feldern und Fehlermeldungen
Gehe zu Seite 1, 2  Weiter
zurück: Filter mittels VBA und einem SQL-Statement in Access setzen. weiter: Ereignis aktives Fenster Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
mZad
Im Profil kannst Du frei den Rang ändern


Verfasst am:
28. Jun 2007, 20:10
Rufname:

Probleme mit INSERT INTO, leeren Feldern und Fehlermeldungen - Probleme mit INSERT INTO, leeren Feldern und Fehlermeldungen

Nach oben
       Version: Office 2003

Hi Leute,

ich habe ein extrem großes Problem.

Ich habe ein ungebundendes Formular mit ungebundenen Editfelder erstellt. Nach Eingabe der Daten soll per Buttonklick alles in eine Tabelle gespeichert werden, das ganze habe ich mittels diesen Code programmiert:
Code:
    strSQL = "INSERT INTO tblStatistics " & _
                    "(statID, FlapDiameter, treatmentID) " & _
             "VALUES ('" & PrimKeyID & "', " & Me![edtFD] & ", '" & _
                           Me![cboTID] & "');"
    CurrentDb.Execute strSQL, dbFailOnError
statID und TreatmentID sind Textfelder und FlapDiameter ist ein Zahlfeld. Das Zahlfeld hat nur einen gültigen Bereich von 4 bis 10. In der Tabelle habe ich eine entsprechende Gültigkeitsmeldung eingetragen, die auch bei Falscheingabe erscheint, jedoch im Compiler.
Frage1: Schaffe ich es irgendwie diese Fehlermeldung ganz Benutzerfreundlich auszugeben, sodass kein Compiler zum Vorschein kommt? Gibt es da irgend eine Abfangmöglichkeit?

Weiterhin ist es so, das ich keine MUSS-Eingabe definiert habe. Felder können also frei bleiben. Das dumme ist jetzt, sobald ich das Zahl-feld (FlapDiamter) frei lasse, kommt die Meldung "Fehler in der INSERT INTO Anweisung". Ist ja auch irgendwo logisch, wenn kein Wert drinnen ist, kann auch die Insert Anweisung nicht komplett "beladen" werden und es kommen Fehler. Daher die Frage, wie kann ich es anstellen, das selbst mit Insert Into ein, oder mehr Felder, leer bleiben können und der Rechner einfach garnix in die Tabelle schreibt?

Ich habe hier ca. ne Stunde nach Lösungen gesucht, aber keinen richtigen Ansatz gefunden. Daher hab ich nen eigenen Post geöffnet.

Grüße, Marcus

_________________
Ich voll der Noob, also bitte helft mir Smile ich will ja schließlich auch etwas von euch lernen
Nouba
nicht ganz unwissend :)


Verfasst am:
28. Jun 2007, 20:53
Rufname:
Wohnort: Berlin


AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hallo,

versuche es einmal mit ... & IIf(IsNull(Me!edtFD), "Null", Str(Me!edtFD)) & ..., wobei die Str-Funktion nur bei möglichen Nachkommastellen im Feld verwendet werden muss.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
mZad
Im Profil kannst Du frei den Rang ändern


Verfasst am:
28. Jun 2007, 21:04
Rufname:

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hi,

hab es probiert, nun kommt der Fehlercode
Zitat:
94 (Unzulässige Verwendung von Null)

_________________
Ich voll der Noob, also bitte helft mir Smile ich will ja schließlich auch etwas von euch lernen
Nouba
nicht ganz unwissend :)


Verfasst am:
28. Jun 2007, 21:07
Rufname:
Wohnort: Berlin

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hallo,

dann prüfe bitte einmal, ob die Felddeklaration in der Tabelle überhaupt Null-Werte zulässt?

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
mZad
Im Profil kannst Du frei den Rang ändern


Verfasst am:
28. Jun 2007, 21:16
Rufname:


AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

also unter Null-Wert versteh ich eben, das ne "0" drinnen stehen kann Smile

Aber das Kriterium ist eben, das da der wertebereich von 4 bis 10 geht. 0 Darf also nicht eingetragen werden. Das ist eben mein Problem. 0 Kann ich nicht eintragen, aber nichts, sollte man auch eintragen können, also ein leeres Feld. Ansonsten, wenn ich das mit dem Null-Wert, doch falsch verstanden haben sollte, wo finde ich das dann? Bei den Deklarationen habe ich nix in der hinsicht sonst gefunden.

_________________
Ich voll der Noob, also bitte helft mir Smile ich will ja schließlich auch etwas von euch lernen
Nouba
nicht ganz unwissend :)


Verfasst am:
28. Jun 2007, 21:19
Rufname:
Wohnort: Berlin

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hallo,

was steht unter Eingabe erforderlich? Wie lautet die Gültigkeitsregel? Kannst Du beim manuellen Anlegen eines Datensatzes das Feld leer (frei) lassen?

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
mZad
Im Profil kannst Du frei den Rang ändern


Verfasst am:
28. Jun 2007, 21:30
Rufname:

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

also die Regel lautet "Zwischen 4 und 10,9" und beim manuellen anlegen kann ich das Feld (bzw die anderen, sind ja mehr Felder und das eine nehme ich nur als Beispiel zum testen) können frei gelassen werden
_________________
Ich voll der Noob, also bitte helft mir Smile ich will ja schließlich auch etwas von euch lernen
Nouba
nicht ganz unwissend :)


Verfasst am:
28. Jun 2007, 21:48
Rufname:
Wohnort: Berlin

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hallo,

dann lasse Dir bitte einmal mit Debug.Print strSQL den Abfragetext im Direktbereich (Strg+G im VBA-Editor) ausgeben und kopiere ihn in die SQL-Ansicht einer neuen Abfrage. Teste ihn dann. Zeige uns bitte bei Misserfolg, wie der SQL-Text lautet und welche Fehlermeldung erscheint.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
mZad
Im Profil kannst Du frei den Rang ändern


Verfasst am:
28. Jun 2007, 22:46
Rufname:

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

hi,

also so sieht die Syntax aus:
Code:
INSERT INTO tblStatistics (statID, FlapDiameter, treatmentID)
VALUES ('2314-OS-1', , '14-OS-1');
und folgende Fehlermeldung erscheint:

Syntaxfehler in der INSERT INTO - Anweisung

Wenn ich das mit den IsNull versuche, dann springt er schon vorher raus und gibt mir noch nicht einmal eine SQL Syntax aus.

_________________
Ich voll der Noob, also bitte helft mir Smile ich will ja schließlich auch etwas von euch lernen
Willi Wipp
Moderator


Verfasst am:
29. Jun 2007, 00:34
Rufname:
Wohnort: Raum Wiesbaden

Re: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - Re: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hi mZad,

versuch als Erstes mol folgenden SQL-Code in einer Abfrage
Code:
INSERT INTO tblStatistics (statID, FlapDiameter, treatmentID)
VALUES ('2314-OS-1', Null, '14-OS-1');
Funktioniert das?
Was passiert genau wenn Du den Vorschlag von Nouba mit IsNull... versuchst?

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
mZad
Im Profil kannst Du frei den Rang ändern


Verfasst am:
29. Jun 2007, 13:52
Rufname:

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

mZad am 29. Jun 2007 um 09:50 hat folgendes geschrieben:
Hi Willi,

das is echt suspekt. Dein Code in der SQL Abfrage funktioniert. Wenn ich den eingebe und ausführe, dann lässt er mir das Feld frei.
Wenn das mit den IsNull von Nouba einsetze kommt folgende Fehlermeldung:
Zitat:
94 (Unzulässige Verwendung von Null)
und der VBA SQL-Code sieht so aus:
Code:
   strSQL = "INSERT INTO tblStatistics " & _
                   "(statID, FlapDiameter, treatmentID) " & _
            "VALUES ('" & PrimKeyID & "', " & _
                     IIf(IsNull(Me!edtFD), "Null", Str(Me!edtFD)) & ", " & _
                    "'" & Me![cboTID] & "');"

Hi Leuts,

nach einigen hin und herprobieren habe ich folgendes Versucht:
Code:
    strSQL = "INSERT INTO tblStatistics " & _
                    "(statID, FlapDiameter, treatmentID) " & _
             "VALUES ('" & PrimKeyID & "', " & _
                      Nz(Me![edtFD], "Null") & ", '" & Me![cboTID] & "');"
und es funktioniert. Aber danke für eure Denkanstöße, die ham mir sehr viel weitergeholfen! Ihr seit spitze!!!! Dickes Lob.
_________________
Ich voll der Noob, also bitte helft mir Smile ich will ja schließlich auch etwas von euch lernen
Nouba
nicht ganz unwissend :)


Verfasst am:
29. Jun 2007, 14:02
Rufname:
Wohnort: Berlin

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hallo,

funktioniert es auch, wenn Du einen Wert mit Nachkommaanteil eingibst?

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
mZad
Im Profil kannst Du frei den Rang ändern


Verfasst am:
29. Jun 2007, 14:20
Rufname:

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hi,

oh schreck... das geht nicht. Da kommt folgende Fehlermeldung:
Zitat:
Fehlercode 3346: Anzahl der Abfragewerte und Zielfelder stimmt nicht überein.
Ist ja auch logisch wenn ich mir das hier ansehe:
Code:
INSERT INTO tblStatistics (statID, FlapDiameter, treatmentID)
VALUES ('2525-OD-1', 4,1, '25-OD-1');
Aber wie umgehe ich das, wenn ein Zahlwert eingegeben werden muss und er nicht als Text durchgeht?

Ein weiteres Beispiel, wie höllisch man Acht geben muss.

_________________
Ich voll der Noob, also bitte helft mir Smile ich will ja schließlich auch etwas von euch lernen
Nouba
nicht ganz unwissend :)


Verfasst am:
29. Jun 2007, 14:38
Rufname:
Wohnort: Berlin

AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hallo,

diese Umwandlung nimmt normalerweise die Str-Funktion vor. Weshalb der von mir vorgeschlagene Ausdruck nicht funktioniert, kann ich jedoch leider nicht ermitteln. Erstelle einmal das Steuerelement neu, ohne irgendwelche Eigenschaften dafür zu verändern.

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Perixx
Gast


Verfasst am:
29. Jun 2007, 14:49
Rufname:


AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu - AW: Probleme mit INSERT INTO, leeren Feldern und Fehlermeldu

Nach oben
       Version: Office 2003

Hi mZad,

ich hoffe ich hab das Problem richtig verstanden.

m.e. mußt Du Dein numerisches Feld mit

Default Value =Null
Validation Rule >=4 and <=10

definieren

Das "=Null" bedeutet nicht die Ziffer Null "0" sondern im Feld keine Eingabe eben Nix (wie es bei Dir auch vorkommen kann)
Die Validation Rule zieht erst wenn Daten zu prüfen da sind (bei "not Null").

Als zweites würde ich noch auf 2 Insert statements umsteigen. (geht bestimmt auch mit einem, aber ich denke mal es ist schwierig in das Textfled wieder einen Null-Wert zu bekommen wenn der Cursor da mal drin war)
Eines, indem das Feld Flagdiameter (richtig so?) enthalten ist und eines ohne dieses Feld (letzteres mußt Du natürlich ausführen, wenn Flgdingens leer ist).
Dann mußt du nur noch steueren welche Statement ausgeführt werden soll

zu kompliziert?
Sorry ich erkläre schlecht
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle per INSERT INTO m. Werten o. Quelltabelle erweitern? 6 Zamp 801 25. Jun 2007, 19:13
Zamp Tabelle per INSERT INTO m. Werten o. Quelltabelle erweitern?
Keine neuen Beiträge Access Tabellen & Abfragen: Löschen von Infos in best. Feldern von gewissen Records 4 janbroennimann 390 05. Jun 2007, 11:29
janbroennimann Löschen von Infos in best. Feldern von gewissen Records
Keine neuen Beiträge Access Tabellen & Abfragen: Frage zu INSERT INTO 3 Silly14 591 13. März 2007, 17:04
Thomas2007 Frage zu INSERT INTO
Keine neuen Beiträge Access Tabellen & Abfragen: INSERT INTO Abfrage 1 Zamp 803 12. Jan 2007, 01:48
Erli INSERT INTO Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: ACCESS Splash - INSERT INTO Abfrage Code 0 Joppel 698 21. Dez 2006, 21:38
Joppel ACCESS Splash - INSERT INTO Abfrage Code
Keine neuen Beiträge Access Tabellen & Abfragen: Suchfeld nach Suche leeren 2 fips1985 1391 08. Sep 2006, 10:05
fips1985 Suchfeld nach Suche leeren
Keine neuen Beiträge Access Tabellen & Abfragen: INSERT Statement mit SELECT und VALUES 2 Gast 1506 13. Jul 2006, 06:42
Pogoist INSERT Statement mit SELECT und VALUES
Keine neuen Beiträge Access Tabellen & Abfragen: Instert Into Abfrage bei externen(verknüpften) Tabellen 3 Flodo 582 13. Jun 2006, 07:35
blicki Instert Into Abfrage bei externen(verknüpften) Tabellen
Keine neuen Beiträge Access Tabellen & Abfragen: Umbenennung von Feldern bei Konvertierung (ZString) 2 Bert_02 3312 07. Apr 2006, 10:22
Nouba Umbenennung von Feldern bei Konvertierung (ZString)
Keine neuen Beiträge Access Tabellen & Abfragen: Leeren Datensatz oder leere zwischen Zeile hinzufügen 3 cool.scheffe 1005 23. März 2006, 13:51
rita2008 Leeren Datensatz oder leere zwischen Zeile hinzufügen
Keine neuen Beiträge Access Tabellen & Abfragen: Summe aus zwei Feldern in einer Tabelle 3 Gaudí83 3422 14. März 2006, 22:24
Nouba Summe aus zwei Feldern in einer Tabelle
Keine neuen Beiträge Access Tabellen & Abfragen: Datensätze einfügen mittels INSERT INTO 3 TTh 1286 21. Feb 2006, 21:22
jens05 Datensätze einfügen mittels INSERT INTO
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: PHP Forum