Jak utworzyć tabelę SQL w innym schemacie?


137

To pochodzi z SQL Server 2008, ssms

Kiedy tworzę tabelę, tworzy ona pod dbo.

Chciałbym utworzyć go w innym schemacie, ale kiedy używam okna dialogowego „Nowa tabela”, nigdy nie mogę znaleźć pola, w którym to określić.

Odpowiedzi:


242
  1. Kliknij prawym przyciskiem myszy węzeł tabel i wybierz New Table...
  2. Po otwarciu projektanta tabel otwórz okno właściwości (widok -> Okno właściwości).
  3. Możesz zmienić schemat, w którym zostanie utworzona tabela, wybierając schemat w oknie właściwości.

Jak byś to zrobił programowo. tj. Utwórz tabelę SUSER_SNAME (). [MyTableName], ale to faktycznie działa. Czy jest to również uczciwy sposób przechowywania tymczasowych zmiennych globalnych, aby umożliwić różnym aplikacjom komunikowanie się ze sobą?
Adamantish

Ok dzięki, ale miałem na myśli posiadanie nazwy schematu jako zmiennej według tego, który użytkownik go uruchamia. Zrobiłem to z odrobiną dynamicznego SQL, ale i tak znalazłem lepszy sposób na umieszczenie tych zmiennych w tabeli na komputerze użytkownika.
Adamantish

1
@adrianbanks, bardzo miło, że wskazałeś im właściwy kierunek!
Shaun F

Dzięki @adrianbanks. Nie robił tego przez jakiś czas i był bliski napisania scenariusza tworzenia!
Karl Gjertsen,

50

Spróbuj biegać CREATE TABLE [schemaname].[tableName]; GO;

Zakłada się, że nazwa schematu istnieje w bazie danych. Użyj, CREATE SCHEMA [schemaname]jeśli chcesz również utworzyć schemat.

EDYCJA: zaktualizowano w celu uwzględnienia SQL Server 11.03 wymagającego, aby była to jedyna instrukcja w partii.


1
Tak, zdaję sobie sprawę, że mogę to zrobić, po prostu zastanawiałem się, czy wersja dialogowa ma gdzieś to zrobić.
Matt

Próbowałem tego samego, nie działa, czy robię coś źle? CZY to po prostu działa w MSSQL 2012?
Pankaj Parkar

7
@PankajParkar: To nie zadziała, jeśli schemat nie istnieje. Najpierw utwórz schemat, używając, create schema [schema_Name]a następnie powyższego zapytania.
Sangram Nandkhile,

14

                           utwórz schemat bazy danych w SQL Server 2008
1. Przejdź do Security> Schemas
2. Kliknij prawym przyciskiem myszy Schemas i wybierz New Schema
3. Uzupełnij szczegóły w zakładce Ogólne dla nowego schematu. Na przykład nazwa schematu to „MySchema”, a właścicielem schematu jest „Admin”.
4. Dodaj użytkowników do schematu zgodnie z wymaganiami i ustaw ich uprawnienia:
5. Dodaj dowolne rozszerzone właściwości (na karcie Właściwości rozszerzone)
6. Kliknij przycisk OK.
                          Dodaj tabelę do nowego schematu „MySchema”
1. W Object Explorer, kliknij prawym przyciskiem myszy nazwę tabeli i wybierz „Design”:
2. Zmiana schematu bazy danych dla tabeli w SQL Server Management Studio
3. W widoku projektu naciśnij klawisz F4, aby wyświetlić okno Właściwości.
4. W oknie Właściwości zmień schemat na żądany:
5. Zamknij widok projektu, klikając kartę prawym przyciskiem myszy i wybierając opcję „Zamknij”:
6. Zamykanie widoku projektu.
7. Po wyświetleniu monitu o zapisanie kliknij przycisk „OK”.
8. Twoja tabela został przeniesiony do schematu „MySchema”.

Odśwież widok przeglądarki obiektów Aby potwierdzić zmiany
Gotowe


Bardzo przydatny poprzedni proces tworzenia schematu bazy danych. Dzięki.
mggSoft


5

Odpowiedź Shauna F nie zadziała, jeśli schemat nie istnieje w bazie danych. Jeśli ktoś szuka sposobu na stworzenie schematu, po prostu wykonaj następujący skrypt, aby utworzyć schemat.

create schema [schema_name]
CREATE TABLE [schema_name].[table_name](
 ...
) ON [PRIMARY]

Podczas dodawania nowej tabeli przejdź do trybu projektowania tabeli i naciśnij, F4aby otworzyć okno właściwości i wybierz schemat z listy rozwijanej. Domyślnie jest dbo.

Możesz także zmienić schemat bieżącej tabeli za pomocą okna Właściwości.

Odnosić się:

wprowadź opis obrazu tutaj


W SQL Server 11.0.3+ spowoduje to zgłoszenie błędu, jedyną operacją w partii musi być CREATE SCHEMA. CREATE SCHEMA setup; GO
lista pieszych wędrówek

3

Kiedy tworzę tabelę przy użyciu SSMS 2008, widzę 3 okienka:

  • Projektant kolumn
  • Właściwości kolumny
  • Właściwości tabeli

W panelu właściwości tabeli znajduje się pole: Schemaktóre pozwala wybrać schemat.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.