MySQL / ODBC / BASE Problem

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Gert Seler
*******
Beiträge: 1763
Registriert: Di, 03.10.2006 18:05

Re: MySQL / ODBC / BASE Problem

Beitrag von Gert Seler »

Hallo Nighty2K,
MySQL kann auch mit einem "JDBC-Treiber" installiert werden.
Ich kann Dir jetzt nur diese Hilfe anbieten : http://www.ooowiki.de/MySql
http://www.uni-koeln.de/rrzk/kompass/108/k10814.html

Ich hoffe das funktioniert.

mfg
Gert
Es gibt nichts gutes, außer man tut es.
Win7_64 / LO_4.4.5.2
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: MySQL / ODBC / BASE Problem

Beitrag von Barlee »

Hallo Nighty2k,
konnte ich die bestehenden Felder nicht mehr verändern aber neue hinzufügen
Meinst Du hiermit die folgende Meldung?
Spalte [...] konnte nicht geändert werden. Soll sie statt dessen gelöscht und das neue Format angehängt werden?

Meinen Beobachtungen nach tritt sie immer dann auf, wenn man unter "Tabelle/Bearbeiten" den Datentyp eines Feldes ändern möchte und die Tabelle bereits Datensätze enthält.
Die Änderung muss dann unter Extras/SQL ausgeführt werden.z.B.:

Code: Alles auswählen

ALTER table Tab_Test1 modify Option2 varchar(45)
Evtl. zeigt Base anschliessend im "Bearbeiten-Modus" den neuen Datentypen noch nicht an. Er lässt sich dann aber i.d.R. ohne Fehlermeldung ändern...

---
z.B. kann ich in Option1 17 Zeichen eingeben in Option2 nur 9 und bei Option3 39
Direkt in die Tabelle kannst Du aber 45 Zeichen eingeben?
Wenn ja, was steht in den Kontrollfeldeigenschaften des Formulars unter Allgemein/Max. Textlänge? Evtl. sind hier die Einschränkungen nachvollziehbar..

Gruß Barlee
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: MySQL / ODBC / BASE Problem

Beitrag von Barlee »

Gibt es bei mir nicht :-S
DOCH!!

Wenn Du ein Formular mit dem Assistenten erstellst, dann werden i.d.R Datenfeld und Beschreibung gruppiert. Wählst Du nun diese Gruppierung aus, dann stimmt Deine obige Aussage. Daher erst die Gruppierung aufheben oder betreten (rechte Maustaste>Gruppe>Aufheben/Betreten) und anschließend in die Eigenschaften des Datenfeldes schauen ...

...oder bezog sich Deine Aussage auf etwas anderes???

Gruß Barlee
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: MySQL / ODBC / BASE Problem

Beitrag von Barlee »

Hallo nighty2k,
Hauptsache man muss nichts manuell eintragen.
Nun, Du könntest für Dein Timestamp Feld ein Default Wert definieren.
unter Extras/SQL
z.B:

Code: Alles auswählen

alter table "Deine Tabelle" alter "Spalte" set default Current_timestamp
somit weist Du einen Timestamp als Standardwert zu. Anschließend im Tabellenentwurf für das Timestamp Feld bei "Eingabe erforderlich" ein "Nein" einstellen. Der Standardwert sorgt dann dafür, dass das Feld ohne Dein Zutun gefüllt wird...

Gruß Barlee
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: MySQL / ODBC / BASE Problem

Beitrag von Barlee »

Hallo nighty2k,

das was Du schreibst ist schon korrekt. Allerdings kann man doch zu gewünschtem Ergebnis kommen.
Wende einfach folgendes auf Deine Timstamp Spalte an ... (und staune ;-) )

Code: Alles auswählen

ALTER TABLE [Deine_Tabelle] MODIFY COLUMN [Timestamp-Spalte] TIMESTAMP NULL DEFAULT CURRENT TIMESTAMP
Gruß Barlee
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: MySQL / ODBC / BASE Problem

Beitrag von Barlee »

Hallo nighty2k,

da scheint der Datentyp nicht zu stimmen.
Das Verhalten tritt auf, wenn Du z.B versuchst, in ein Feld vom Typ INTEGER eine Klammer zu schreiben ...
Ändere den Datentypen auf CHAR oder VARCHAR

Gruß Barlee
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: MySQL / ODBC / BASE Problem

Beitrag von Barlee »

Hallo nighty2k,

ich hatte Dich schon richtig verstanden. Allerdings hattest Du den Datentypen des betreffendes Feldes Tel. bisher nicht mitgeteilt.

Zu Deiner Frage. Ist ein Feld als VARCHAR definiert, solltest Du in Base problemlos die Zeichenfolge +49()- als Standardwert einsetzen können. Anführungsstriche sind nicht erforderlich. Ich habe dieses in verschiedenen mySQL Tabellen und Base Formularen probiert - jedesmal erfolgreich.
Das von Dir beschriebene Verhalten ist für mich nur reproduzierbar, wenn die Datentypen zwischen Standardwert und Felddefinition nicht übereinstimmen. Daher kann ich Dein Problem nicht nachvollziehen.

Erstelle zu Testzwecken eine neue mySQL-Tabelle mit einigen VARCHAR Feldern. Nimm Testeinträge vor und erzeuge anschl. ein Formular und versuche den Textfeldern einen Standardwert hinzuzufügen. Treten Deine Beobachtungen dann auch auf?

Gruß Barlee
Barlee
******
Beiträge: 767
Registriert: Sa, 17.12.2005 12:27

Re: MySQL / ODBC / BASE Problem

Beitrag von Barlee »

Hallo nighty2k,
Hier heißt die Option auch Standardwert und nicht Standardtext.
Hast Du dann wirklich ein "Textfeld" genommen und nicht evtl. ein "formatiertes Feld"????
Selbst wenn ich ein Formular selbst erstelle, erhalte ich bei einem Textfeld immer die Option, einen Standardtext einzugeben. Nehme ich z.B. ein Kontrollelement vom Typ "formatiertes Feld", dann kann ich hier nur einen Standardwert definieren.

Liegt der Fehler vielleicht hier?

Gruß Barlee
Antworten