Hallo Ihrs,
keine Angst, ich werde nicht im gleichen Tempo weiter neue Themen hier posten, allerdings habe ich mir schon die Finger wund gegoogelt und habe nichts Brauchbares gefunden. Ich hoffe, ihr könnt mir da weiter helfen.
Ich möchte einer bestehenden Datenbank den Tabellennamen ändern. Für SQL hab ich das schon realisiert:
[highlight=vbnet]
Case Aenderung.RenameTable 'Tabelle umbenennen
Dim NeuerName As String
NeuerName = InputBox("Wie soll die Tabelle heißen?")
If rbtSQL.Checked Then
'########## SQL ##########
ZS = "EXEC SP_RENAME "
ZS &= tbxTableName.Text
ZS &= ", "
ZS &= NeuerName
ElseIf rbtAccess.Checked Then
'########## Access ##########
'...
Else
MsgBox("Bitte wählen Sie entweder Access oder SQL!")
End If
End Select
con.Open()
Try
cmd.CommandText = ZS
cmd.ExecuteNonQuery()
'...
[/highlight]
Eine einfache ALTERanweisung mit RENAME funktioniert nicht und die Variante, die ich bei SQL angewand habe funktioniert logischerweise auch nicht.
Ich möchte möglichst nicht eine neue Tabelle anlegen und alle Datensätze rüberkopieren und die alte Tabelle löschen, da so ja die Beziehungen verloren gehen.
In Access selbst kann man ja einfach nen Rechtsklick auf die Tabelle machen und 'Umbennen' sagen. Da werden die Beziehungen automatisch mitgeändert. Wisst ihr, wie Access das intern macht? Ich wollte mir das Ganze als Makro aufzeichnen lassen, bis ich gemerkt habe, dass ich diese Option nicht finde...
Wär super, wenn ihr mir nochmal helfen könntet.
keine Angst, ich werde nicht im gleichen Tempo weiter neue Themen hier posten, allerdings habe ich mir schon die Finger wund gegoogelt und habe nichts Brauchbares gefunden. Ich hoffe, ihr könnt mir da weiter helfen.
Ich möchte einer bestehenden Datenbank den Tabellennamen ändern. Für SQL hab ich das schon realisiert:
[highlight=vbnet]
Case Aenderung.RenameTable 'Tabelle umbenennen
Dim NeuerName As String
NeuerName = InputBox("Wie soll die Tabelle heißen?")
If rbtSQL.Checked Then
'########## SQL ##########
ZS = "EXEC SP_RENAME "
ZS &= tbxTableName.Text
ZS &= ", "
ZS &= NeuerName
ElseIf rbtAccess.Checked Then
'########## Access ##########
'...
Else
MsgBox("Bitte wählen Sie entweder Access oder SQL!")
End If
End Select
con.Open()
Try
cmd.CommandText = ZS
cmd.ExecuteNonQuery()
'...
[/highlight]
Eine einfache ALTERanweisung mit RENAME funktioniert nicht und die Variante, die ich bei SQL angewand habe funktioniert logischerweise auch nicht.
Ich möchte möglichst nicht eine neue Tabelle anlegen und alle Datensätze rüberkopieren und die alte Tabelle löschen, da so ja die Beziehungen verloren gehen.
In Access selbst kann man ja einfach nen Rechtsklick auf die Tabelle machen und 'Umbennen' sagen. Da werden die Beziehungen automatisch mitgeändert. Wisst ihr, wie Access das intern macht? Ich wollte mir das Ganze als Makro aufzeichnen lassen, bis ich gemerkt habe, dass ich diese Option nicht finde...
Wär super, wenn ihr mir nochmal helfen könntet.
Comment