![]() |
Datenbank: firebird • Version: 1.5 • Zugriff über: interbasekomponenten
FieldDefs.AddFieldDef.Datatype funktioniert nicht
hallo leute
folgender code funktioniert nicht
Delphi-Quellcode:
folgende fehlermeldung
t.active := false;
t.database := ibdatabase1; t.tablename := 'newtable'; t.fielddefs.addfielddef.name := 'neu'; t.fielddefs.addfielddef.datatype := ftstring; t.fielddefs.addfielddef.size := 15; t.createTable; "EIBClientError 'nicht unterstützter feldtyp'" benutze firebird 1.5, keinen plan woran es liegt. wenn ich ein query benutze dann geht es, dann natürlich mit sql. mato |
Re: FieldDefs.AddFieldDef.Datatype funktioniert nicht
Hi,
leider hab ich nicht wirklich was mit Interbase und / oder Firebird gemacht, aber ich glaube da ist ein Fehler in Zitat:
Versuch es mal mit
Delphi-Quellcode:
Wahrscheinlich ist bei zweien deiner FieldDefs der Datatype auf ftUnknown gesetzt und ob der dann unterstüzt wird...
var fieldDef : TFieldDef;
begin fieldDef := t.fieldDefs.addFieldDef; fieldDef.name := 'neu'; fieldDef.datatype := ftstring; fieldDef.size := 15; end; Gruß Der Unwissende |
Re: FieldDefs.AddFieldDef.Datatype funktioniert nicht
Delphi-Quellcode:
Mit dem Code legst du im Prinzip 3 Felder an. Probiers mal damit (aus der OH):
t.active := false;
t.fielddefs.addfielddef.name := 'neu'; t.fielddefs.addfielddef.datatype := ftstring; t.fielddefs.addfielddef.size := 15;
Delphi-Quellcode:
with t.fielddefs.AddFieldDef do begin
Name := 'neu'; DataType := ftstring; size := 15; end; |
Re: FieldDefs.AddFieldDef.Datatype funktioniert nicht
danke erstmal, das wars, peinlicher denkfehler meinerseits. die fehlermeldung ist weg, aber die tabelle wird nicht angelegt. muss die tabelle schon vorhanden sein?
|
Re: FieldDefs.AddFieldDef.Datatype funktioniert nicht
Bin mir nicht sicher, ob das mit Firebird so überhaupt funktioniert, da das ja eine SQL-Datenbank ist. Auf jeden Fall funktionieren wird es, wenn du dir ein "Create TABLE ..." Statement zusammenbastelst und das an die Datenbank schickst.
EDIT: Hab grad in der OH zu TIBTAble ncohmal nachgeschaut, also eigentlich müsste es auch mit CreateTable funktionieren... |
Re: FieldDefs.AddFieldDef.Datatype funktioniert nicht
na ja, danke erstmal für deine bemühungen. das es funktionieren sollte ist ja schön und gut, hilft mir im moment aber nicht so richtig weiter.
der punkt ist, ich möchte die tabellenstruktur von beliebigen datenbanken in eine firebird/interbase - db kopieren, wahlweise mit oder ohne daten. da ich dummerweise mit ado(access) angefangen habe kann ich mit, ich glaube es war 'TBatchMove', nicht viel machen, zumindest nach meinem stand der dinge. ich werde nochmal versuchen erst die tabellen einzeln und danach die felder reinzuquetchen, vielleicht geht es ja dann. alles ein wenig verwirrend, aber ich werde es schon hinkriegen. doch wenn irgend jemand noch eine idee hat, ich bin für alles offen. mato **************************** habe jetzt herausgefunden das sich firebird an dem ftString gestört hat. nur den scheint er nicht zu wollen. bei ftinteger oder ftFixedChar macht er keine probleme. muss mich nochmal wegen den feldtypen kundig machen, welche nun unterstützt werden und welche nicht. *************************** und gleich nochmal, weil es so schön war. jetzt macht er es doch, warum auch immer. habe mal mit der -Size- rumgebastelt. wollte ja immer eine länge von -15- haben, hat er aber echt nicht gemacht. habe ich also mit -1- angefangen und mit einer schleife bis 14 laufen lassen und siehe da ... er tuts. das komische daran ist nur, habe die schleife bis 25 erhöht und er tuts immernoch. auch die -15- alleine bei nich existierender tabelle macht er mir jetzt. ich habe echt nichts weiter verändert, ist schon komisch. na wenn ich noch drauf komme gebe ich mal laut. mato |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:18 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-2025 by Thomas Breitkreuz