![]() |
Datenbank: BDE • Zugriff über: BDE
Feldtyp von BDE nach MySQL...geht das?
Hallo Wissende!
Ich bin gerade dabei ein kleines Tool zu schreiben, mit dem ich meine DBF-Datenbanken in eine SQL-Tabelle schreiben kann. Dazu ist es erforderlich, dass ich den Feldtyp der DBF-DB auslese und in den CREATE-Table-Abschnitt übersetzt unterbringe. Nun ist es aber so, dass bei SQL zum einen VarChar immer mit einem Anzahlparameter befüttert werden muss und zum anderen ih nicht genau weiss, welche anderen Feldtypen nach SQL überhaupt transformiert werden könnten. Wie kann ich also herausbekommen, ob und wenn wieviele Stellen ein Integer-Feld, oder ein Stringfeld vorgabetechnisch haben?? Und wie kann ich die anderen Feldtypen nach SQL-Feldtypen "übersetzen"? Ich habe es bis jetzt so gemacht, aber das WAHRE ist "noch" es nicht.
Delphi-Quellcode:
Für Tipps und/oder Hinweise bin ich dankbar!
function ReturnSQLTyp(T : TFieldType):string;
begin case T of ftString : Result := 'VARCHAR(255)'; ftFloat : Result := 'FLOAT(5)'; ftCurrency : Result := 'VARCHAR(50)'; ftMemo : Result := 'TEXT'; ftBlob : Result := 'BLOB'; ftDate : Result := 'DATE'; ftDateTime : Result := 'DATETIME'; ftTime : Result := 'TIME'; ftSmallInt : Result := 'SMALLINT'; ftInteger : Result := 'INT'; ftBoolean : Result := 'Boolean'; ftBytes : Result := 'Bytes'; ftWord : Result := 'Word'; ftTimeStamp : Result := 'TIMESTAMP'; ftVariant : Result := 'Variant'; ftBCD : Result := 'BCD'; ftVarBytes : Result := 'VarBytes'; ftAutoInc : Result := 'INT NOT NULL AUTOINCREMENT'; ftGraphic : Result := 'Graphic'; ftFmtMemo : Result := 'FmtMemo'; ftParadoxOle : Result := 'ParadoxOle'; ftDBaseOle : Result := 'DBaseOle'; ftTypedBinary : Result := 'TypedBinary'; ftCursor : Result := 'Cursor'; ftFixedChar : Result := 'CHAR(200)'; ftWideString : Result := 'WideString'; ftLargeint : Result := 'BIGINT'; else Result := 'Feldtyp unbekannt'; end; end; |
Re: Feldtyp von BDE nach MySQL...geht das?
ich hab auch mal eine BDE in mySQL "übersetzen" müssen.
und habe es auch "manuell" gemacht mit einer Übersetzungsliste. was besseres ist mir nicht eingefallen... |
Re: Feldtyp von BDE nach MySQL...geht das?
hm, könntest Du mir denn mal Deine Liste zukommen lassen, damit ich vielleicht wenigstens einen Vergleich habe???
Mein Problem ist ja auch noch das Auslesen der Feldgrösse. Man kann ja auch in DBF-DB´s die Feldgrösse vorgeben. Kann man sie auch auslesen? |
Re: Feldtyp von BDE nach MySQL...geht das?
Zitat:
ausser, dass deine liste ausführlicher ist, weil ich nicht alle Datentypen gebraucht habe. Zitat:
|
Re: Feldtyp von BDE nach MySQL...geht das?
Ok, danke trotzdem.
Ich werde es einfach mal mit
Delphi-Quellcode:
probieren! Vielleicht reicht das ja schon...
Fields.Fields[i].Size
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz