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.