| Autor |
Beitrag |
HSchaffi
      
Beiträge: 64
|
Verfasst: Mi 12.03.03 15:50
Hallo,
mein Programm greift über die ADO-Komponenten auf eine Accessdatenbank zu. Ich möchte jetzt zur Laufzeit noch eine Tabelle hinzufügen. Geht das?
Kann mir jemand ein Beispiel schicken.
Danke Heidi
|
|
bis11
      
Beiträge: 1247
Erhaltene Danke: 2
Apple Mac OSX 10.11
|
Verfasst: Mi 12.03.03 17:27
Hi und willkommen,
mache das doch einfach über ein SQL-Skript in der TQuery-Komponente mit dem SQL - Befehl "CREATE TABLE".
|
|
HSchaffi 
      
Beiträge: 64
|
Verfasst: Do 13.03.03 13:25
Die Tabelle über die Query erstellen geht, aber ich möchte in die erste Spalte eine Autonummer haben.
Ich habe es schon so probiert:
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| Create Table lblLog (LOG_LFDNR integer not null, LOG_DATEINAME varchar(30), LOG_DATUM varchar(25), LOG_ERROR char(1), LOG_MESSAGE varchar(60), primary key (LOG_LFDNR) );
create generator gen_LOG_LFDNR; set generator gen_LOG_LFDNR to 1;
set term ^; create trigger tblLog_b_i for tblLog before insert as begin new.LOG_LFDNR = gen_id(gen_LOG_LFDNR,1); end^ set term ;^ |
Aber das geht nicht bringt immer Syntaxfehler. Sieht jemand meinen Fehler? oder geht diese Variante überhaupt bei einer Accessdatenbank nicht?
MfG
Heidi
|
|
bis11
      
Beiträge: 1247
Erhaltene Danke: 2
Apple Mac OSX 10.11
|
Verfasst: Do 13.03.03 14:43
Probiere mal folgende Script :
Quelltext 1: 2: 3: 4: 5: 6: 7: 8:
| Create Table lblLog (LOG_LFDNR integer AUTOINC not null, LOG_DATEINAME varchar(30), LOG_DATUM varchar(25), LOG_ERROR char(1), LOG_MESSAGE varchar(60), primary key (LOG_LFDNR) ); |
Oder statt autoinc schreibste Autoincrement rein.
|
|
HSchaffi 
      
Beiträge: 64
|
Verfasst: Do 13.03.03 14:48
Geht beides nicht - Syntaxfehler.
Heidi
|
|
bis11
      
Beiträge: 1247
Erhaltene Danke: 2
Apple Mac OSX 10.11
|
Verfasst: Do 13.03.03 15:11
Probiere es mal so, direkt im Access, wenn das funktioniert, musst Du das nämlich aufdröseln, Du kannst nicht das komplette Script in denSQL-Text einer Query reinschreiben.
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| create generator gen_LOG_LFDNR; set generator gen_LOG_LFDNR to 1;
Create Table lblLog (LOG_LFDNR integer not null, LOG_DATEINAME varchar(30), LOG_DATUM varchar(25), LOG_ERROR char(1), LOG_MESSAGE varchar(60), primary key (LOG_LFDNR) );
create trigger tblLog_b_i for tblLog before insert as begin new.LOG_LFDNR = gen_id(gen_LOG_LFDNR,1); end |
|
|
HSchaffi 
      
Beiträge: 64
|
Verfasst: Do 13.03.03 15:55
Ich hatte es auch nicht zusammen in der query. Ich habe zuerst die Tabelle angelegt und dann den Generator und Trigger . Aber beim Generator geht das nicht (da springt er aus meinen TRY-Block raus), wahrscheinlich geht das nicht bei dei ADO-Komponenten, über die BDE habe ich das schon so gemacht.
Versuche einen anderen Weg zu finden.
_________________ Gruss HSchaffi
Gegenseitige Achtung ist wie ein Lächeln - sie kostet nichts, und jeder freut sich darüber. ( Vagner Fernando Lobosco )
|
|
MSCH
      
Beiträge: 1448
Erhaltene Danke: 3
W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
|
Verfasst: Fr 14.03.03 20:04
Hi,
such dir die Kadao-Kompos, die sind frei und da geht noch einiges mehr, was mit Ado nur via umständlicher Tricks möglich ist.
(ganz wichtig z.b. wenn man die MDB-Datei mal aufräumen möchte).
Grüß
MSCH
|
|
HSchaffi 
      
Beiträge: 64
|
Verfasst: Fr 14.03.03 20:09
Besten Dank,werde gleich mal suchen.
_________________ Gruss HSchaffi
Gegenseitige Achtung ist wie ein Lächeln - sie kostet nichts, und jeder freut sich darüber. ( Vagner Fernando Lobosco )
|
|