Kleine Sektflaschen Hochzeit
Heute war mal ein schöner Tag!!!! Wir haben gerade eine Datenbank in einen neu installierten SQL-Server eingelesen. Und versucht mit dem Kassen-Programm Oscar drauf zu zugreifen. Das Problem war das Oscar immer meinte die Tabelle "ProcUnit" sei nicht vorhanden. Nach langen hin und her (Datenbank Konvertieren und wieder einlesen) haben wir dann heraus gefunden das, weil die Tabellen nicht das Schema "dbo" hatten, sondern auf das Schema ein Benutzer war, Oscar nicht auf die Datenbank zugreifen konnte. Als erste habe ich erst mal bei Google ein wenig geschaut ob man nicht was Sinnvolles findet um das Schema bzw. den Owner einer Tabelle zu ändern. Gefunden habe ich auch was: z. Sql - zeichen - Ändern der maximalen Länge einer Varchar-Spalte?. b. sp_changeobjectowner ( Tabelle, User) und noch mehr Skripte, aber das alles wollte nicht so ganz funktionieren. Die Fehlermeldung war immer: Objekt ungültig oder konnte in der Datenbank nicht gefunden werden. Also weiter suchen 😉 Dann habe ich was Schönes gefunden: ALTER SCHEMA HumanResources TRANSFER Person. Address Das hat dann auch super funktioniert!!!
Geben Sie die neue Tabelle new_table_name als einteiligen Namen an. RENAME DATABASE [::] [ database_name TO new_database_name APPLIES TO: Analytics Platform System (PDW) Ändern Sie den Namen einer benutzerdefinierten Datenbank von database_name in new_database_name. Sie können eine Datenbank nicht in einen der folgenden für Analytics Platform System (PDW) reservierten Datenbanknamen umbenennen: master model msdb tempdb pdwtempdb1 pdwtempdb2 DWConfiguration DWDiagnostics DWQueue RENAME OBJECT [::] [ [ database_name. ]] table_name COLUMN column_name TO new_column_name APPLIES TO: Analytics Platform System (PDW) Ändert den Namen einer Spalte in einer Tabelle. Umbenennen oder Namen ändern einer MySQL Tabelle. Berechtigungen Zur Ausführung dieses Befehls benötigen Sie folgende Berechtigung: ALTER -Berechtigung für die Tabelle Einschränkungen Externe Tabellen, Indizes oder Sichten können nicht umbenannt werden Sie können keine externen Tabellen, Indizes oder Sichten umbenennen. Anstatt sie umzubenennen können Sie die externe Tabelle, den Index oder die Sicht löschen und dann mit dem neuen Namen erneut erstellen.
Tabelle Customer Spalten Name Datentyp First_Name char(50) Last_Name char(50) Address char(50) City char(50) Country char(25) Birth_Date datetime Zunächst fügen wir eine Spalte "Geschlecht" zu dieser Tabelle hinzu. Dazu geben wir ein: ALTER TABLE Customer ADD Gender char(1); Resultierende Tabellenstruktur: Gender char(1) Als nächstes benennen wir die Spalte "Address" in "Addr" um. Dazu geben wir ein: ALTER TABLE Customer CHANGE Address Addr char(50); Addr char(50) Dann ändern wir den Datentyp der Spalte "Addr" zu char(30). Dazu geben wir ein: ALTER TABLE Customer MODIFY Addr char(30); Addr char(30) Schließlich löschen wir die Spalte "Gender" wieder. Dazu geben wir ein: ALTER TABLE Customer DROP Gender; SQL Primärschlüssels >> Copyright © 2022 Alle Rechte vorbehalten
Sichten werden nicht aktualisiert Wenn Sie eine Datenbank umbenennen, werden alle Sichten ungültig, die den vorherigen Datenbanknamen verwenden. Dieses Verhalten gilt für Sichten innerhalb und außerhalb der Datenbank. Wenn z. B. die Sales-Datenbank umbenannt wird, wird eine Sicht ungültig, die SELECT * FROM enthält. Sie können dieses Problem beheben, indem Sie entweder keine dreiteiligen Namen in Sichten verwenden oder die Sichten aktualisieren, damit diese auf den neuen Datenbanknamen verweisen. Beim Umbenennen einer Tabelle werden Sichten nicht aktualisiert, damit diese auf den neuen Tabellennamen verweisen. Jede Sicht (innerhalb oder außerhalb der Datenbank), die auf den vorherigen Tabellennamen verweist, wird ungültig. Zum Beheben dieses Problems können Sie alle Sichten aktualisieren, damit sie auf den neuen Tabellennamen verweisen. Beim Umbenennen einer Spalte werden Sichten nicht auf den neuen Spaltennamen aktualisiert. Sichten zeigen so lange den alten Spaltennamen an, bis eine ALTER VIEW-Anweisung ausgeführt wird.