[GELÖST] Feldeigenschaften des Formulares nicht editierbar

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

OOO-Fan-XL
**
Beiträge: 24
Registriert: So, 30.10.2011 02:57

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von OOO-Fan-XL »

OK

also ich habe diese Abfrage mit F5 gemacht

und einen haufen Datensätze erscheinen in einem Fenster darüber

es fehlen aber Datensätze, in denen im BLZ Feld auch eine Bankleitzahl steht, ich habe mitlerweile bei allen bis auf 10 Datensätzen die BLZ wieder rausgelöscht,
weil es ja nix gebracht hat dieses Feld zu füllen, weil dann angeblich die Änderung der Feldeigenschaft funktionieren sollte

was sagt mir das jetzt?
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von DPunch »

Aloha
OOO-Fan-XL hat geschrieben:und einen haufen Datensätze erscheinen in einem Fenster darüber
Was das bedeutet?
Dass Du Datensätze hast, die NICHT NULL sind. Und die eine Fehlermeldung wie
Attempt to insert null into a non-nullable column: column: BLZ table: Raumverwaltung in statement [ALTER TABLE "Raumverwaltung" ALTER COLUMN "BLZ" CHAR(50) NOT NULL]
erklären könnten.
OOO-Fan-XL
**
Beiträge: 24
Registriert: So, 30.10.2011 02:57

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von OOO-Fan-XL »

Mir ist aufgefallen, dass ich nur bei 2 von meinen insgesamt 42 Feldern die Feldeigenschaft
"Eingabe erforderlich" zwischen JA und NEIN ändern kann

Alle anderen 40 Felder sind NICHT editierbar, völlig unerheblich davon, ob da Daten drin stehen oder die Felder
leer sind. In manchen Datensätzeen sind alle Felder voll, in anderen wieder nur 10 verschiedene leer usw.

Wo kann ich den Fehler noch suchen?

Übersetzt heisst die Fehlermeldung beim Änderungsversuch bei "Zusätze" ja, dass das Attribut not NULL (also "muss ausgefüllt werden") nicht gesetzt werden kann, weil die Spalte nicht die Fähigkeit hat, not NULLABLE zu sein)

Das kann ich nicht nachvollziehen, weil es ja bei nur 2 Feldern geht, was unterscheidet diese Textfelder von denen, bei denen die Änderung verweigert wird?

Ich verstehe das einfach nicht, ich komme nicht weiter

Ich habe jetzt als Versuch ein neues Feld in der Tabelle erzeugt mit dem NAMEN "Schlumpf". So, und nun lässt sich dieses Feld auch nicht ändern, ich kann wieder nicht bestimmen, dass Eingabe erforderlich ist.
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von DPunch »

Aloha
OOO-Fan-XL hat geschrieben:Übersetzt heisst die Fehlermeldung beim Änderungsversuch bei "Zusätze" ja, dass das Attribut not NULL (also "muss ausgefüllt werden") nicht gesetzt werden kann, weil die Spalte nicht die Fähigkeit hat, not NULLABLE zu sein)
Nein, dass heisst sie nicht.
Ohne die internen Prozeduren im Hintergrund zu kennen, rührt der Fehler vermutlicht daher, dass die Spaltenwerte gecached (zwischengespeichert) werden, dann die Änderungen an der Spalte durchgeführt werden und dann die gespeicherten Werte zurückgeschrieben werden sollen.
Versuch doch mal das, was ich schon vorgeschlagen hatte:

"Extras" -> "SQL..."
dort eingeben

Code: Alles auswählen

UPDATE "Raumverwaltung" SET "BLZ" = '' WHERE "BLZ" IS NULL
Dann speicher und schliess die Base-Datei.
Und *dann* versuch mal, die Spaltendefinition zu ändern auf NOT NULL.
OOO-Fan-XL
**
Beiträge: 24
Registriert: So, 30.10.2011 02:57

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von OOO-Fan-XL »

geht nicht, weil Hochkomma Hochkoma vor dem Wort "Where" nicht in dem Fenster erscheinen, das heisst aus ' ' wird " gemacht

wie gesagt, selbst neu erstellte Felder können auch wieder nicht geändert werden
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von DPunch »

Aloha
OOO-Fan-XL hat geschrieben:geht nicht, weil Hochkomma Hochkoma vor dem Wort "Where" nicht in dem Fenster erscheinen
Wat?
OOO-Fan-XL hat geschrieben:wie gesagt, selbst neu erstellte Felder können auch wieder nicht geändert werden
Ich kann das selbst bei bestehenden Feldern (Windows XP, OOo 3.2.1), insofern kann ich nicht mehr tun, als Dir potenzielle Fehlerquellen aufzuzeigen.
OOO-Fan-XL
**
Beiträge: 24
Registriert: So, 30.10.2011 02:57

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von OOO-Fan-XL »

ich bekomme immer mehr den Eindruck, dass Base kein geeignetes Tool ist

wenn noch nicht einmal die eigenen Programmfunktionen sauber arbeiten und da evtl Cacheprobleme bestehen, kann ich der Sache
wohl kaum noch vertrauen und darauf hoffen, wochenlange Arbeit nicht umsonst investiert zu haben

wenn ich den Befehl so absetzte und ignoriere, dass aus ' ' ein " gemacht wird, erhalte ich die Meldung dass
1 Befehl erfolgreich ausgeführt wurde

ich habe die Base Datei gespeichert und geschlossen

Dann wieder geöffnet und wieder versucht, die Feldeigenschaft zu ändern

geht wieder nicht, wieder gleiche Fehlermeldung

auch wieder geht es nicht bei NEU erstellten Feldern

hat wohl keinen Sinn dieses Base
DPunch
*******
Beiträge: 1112
Registriert: Mo, 02.11.2009 16:16
Wohnort: Marburg

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von DPunch »

Aloha
OOO-Fan-XL hat geschrieben:und ignoriere, dass aus ' ' ein " gemacht wird
Da wird gar nichts aus irgendwas gemacht. Wenn Du zwei Hochkommata korrekt eingibst, werden die auch haargenau so angenommen.

Ich würde Base auch Niemandem empfehlen, aber aus ganz anderen Gründen - die Probleme, die Du schilderst, kann ich jedenfalls nicht reproduzieren.
Vielleicht solltest Du mal eine Beispieldatei bereitstellen.
OOO-Fan-XL
**
Beiträge: 24
Registriert: So, 30.10.2011 02:57

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von OOO-Fan-XL »

ich habe den Code kopiert:

UPDATE "Raumverwaltung" SET "BLZ" = ' ' WHERE "BLZ" IS NULL

Base macht daraus im SQL Fenster: (aus ' ' wird ")

UPDATE "Raumverwaltung" SET "BLZ" = '' WHERE "BLZ" IS NULL

dann Klick auf Ausführen

Status:

1: Befehl erfolgreich ausgeführt.

Trotz speichern und schliessen und neu öffnen keine Besserung

wo kann ich Dir die Tabelle hinschicken?

Ich habe es nochmal versucht, und zwar habe ich NACH dem Einfügen des kopierten Befehls nachträglich das Leerzeichen zwischen die beiden Hochkommata
gesetzt und auf Ausführen geklickt. Ergebnis: wie oben, kein Erfolg
OOO-Fan-XL
**
Beiträge: 24
Registriert: So, 30.10.2011 02:57

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von OOO-Fan-XL »

Die Lösung:

leider hat sich keine Ursache gefunden, daher gehe ich davon aus, dass Base extrem mangelhaft ist.

Der einzige Weg, die Möglichkeit, Felder in ihren Eigenschaften wieder editieren zu können bestand
darin, die Tabelle unter einem NEUEN Namen abzuspeichern. Die ursprüngliche Tabelle wird in Name_old umbenannt.

Die durch unter neuem Namen abgespeicherte neue Tabelle muss nun in den ursprünglichen Tabellenamen umbenannt werden. Jetzt kann man die Feldeigenschaften wieder ändern.

WARUM das so ist weiss ich leider nicht, aber ich bin mir sicher, ich werde noch mehr Kuriositäten entdecken.

Jetzt stelle ich mir vor, die Tabelle enthält schon Daten aus jahrelanger Nutzung und Pflege, dann passiert so etwas wie mir, was ist mit den Daten? Ist auf so eine Murkserei Verlass?

Eher nicht.....
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: Feldeigenschaften des Formulares können nicht geändert w

Beitrag von komma4 »

OOO-Fan-XL hat geschrieben:leider hat sich keine Ursache gefunden, daher gehe ich davon aus, dass Base extrem mangelhaft ist.
Meine Erfahrung beim Arbeiten mit Computer(-programmen): der Fehler sitzt meist vor dem Bildschirm.

Irgend etwas wirst Du falsch gemacht haben.
Sicherlich ist BASE nicht fehlerfrei - das von Dir beschriebene Phänomen ist mir allerdings noch nicht unter gekommen.
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Antworten