PDA

Vollständige Version anzeigen : Spalten in Tabellen hinzufügen (SQL)


BNET
07.08.2001, 14:58
Hi,
ich such verzweifelt nach einer Möglichkeit eine neue Spalte zu einer Tabelle hinzuzufügen. Mit dem Standard SQL-Befehl

ALTER TABLE tabellenname ADD (neuer) Spaltenname ...

krieg ich ständig nur Fehlermeldungen. Ich hab so langsam das Gefühl, dass Access mit der SQL-Anweisung nix anfangen kann.

Wäre nett, wenn mir jemand weiterhelfen könnte.

BNET

Nockenwelle
07.08.2001, 23:35
Hi

Welche Meldung bekommst du denn?
Poste am besten deinen Code, dann hilft dir hier auch jemand.

Cu

Lupus
08.08.2001, 05:06
ohja ..

eine Lösung wäre nett .. ich habe mich noch nicht rangetraut ...
ich erstelle per Kreuztabelle eine Statistik, diese übergebe ich an eine fertige Tabelle.
jeden Monat kommt eine spalte dazu (Ums_0701; Ums_0801 .. usw.)
bisher habe ich mir damit geholfen das ich die Tabelle eigenhändig jeden Monat erweitert habe.
die fertige Tabelle wird dann an Excel übergeben, das klappertet .. aber nicht das neue spalte machen, ich trau mich nicht :(

es grüßt der Accessdaufeigling Lupus

BNET
08.08.2001, 08:00
oki, der Code, soll einfach nur zu der Tabelle 0181 eine Spalte mit Namen HS_SN hinzufügen.

ALTER TABLE 0181 ADD HS_SN;

->folgende Meldung krieg ich dann allerdings immer.

Syntaxfehler in Felddefinition. (Fehler 3292)

Wäre nett, wenn da jemand Bescheid wüsste :)

BNET

WAG
08.08.2001, 08:14
Hi BNET,
z.B.
ALTER TABLE 0181 ADD Column HS_SN Text (50);
oder
ALTER TABLE 0181 ADD Column HS_SN Long;
je nach Felddatentyp.

Dieter

BNET
08.08.2001, 08:34
danke WAG,

weisst du zufällig, wie der Befehl auch noch heissen müsste, wenn der Tabellenname dynamisch eingegeben werden soll ?

Also...

ALTER TABLE (...) ADD...

Grüsse
BNET

WAG
08.08.2001, 08:52
Machs halt mit VBA

Dim DB As Database
Dim Tabname As String
Set DB = CurrentDb
Tabname = "Tabellenname"
DB.Execute "ALTER TABLE " & Tabname & " ADD COLUMN HS_SN Long;"
DB.Close

Dieter

BNET
08.08.2001, 09:01
danke, das ist eine gute Idee.
Leider bin ich mit dem vba-Code noch nicht so bewandert - ausführen lässt sich dein Teilcode aber nicht. Kannst du mir noch ein letztes Mal helfen ??

danke :)

WAG
08.08.2001, 09:11
Nimm ihn z.B. als Inhalt einer Ereignisprozedur eines Button beim klicken.

Dieter

BNET
08.08.2001, 10:00
danke Dieter,

das problem ist allerdings die Umsetzung deines Ratschlags. Könntest du mir das ein bißchen ausführlicher erklären ??

Gruss
BNET

WAG
08.08.2001, 10:20
Erstelle Dir ein neues Formular mit einem Textfeld mit Namen TBName. In dieses kannst Du dann den Tabellennamen schreiben. Mit dem Stuerelementenassistenten erstellst Du Dir dann einen Butten mit beliebiger Funktion.
Im entstandenen Code ersetzt Du dann alles zwischen On Error ... und Exit_ ... durch
Dim DB As Database
Dim Tabname As String
Set DB = CurrentDb
Tabname = Me!TBName
DB.Execute "ALTER TABLE " & Tabname & " ADD COLUMN HS_SN Long;"
DB.Close

Dieter