Udostępnij przez


Wybieranie bazy danych

Większość obiektów w wystąpienie z SQL Server są przechowywane w bazach danych.Wszystkie odwołania do obiektów bazy danych musi być jawnie lub niejawnie rozpoznać określonej bazy danych, w którym zamieszkują.

Odwołania do bazy danych

Występują odwołania jawne bazy danych podczas Transact-SQL instrukcja nazwy bazy danych, który przechowuje dane.Poniższy przykład jawnie nazwy AdventureWorks2008R2 bazy danych:

SELECT BusinessEntityID, LoginID, NationalIDNumber
FROM AdventureWorks2008R2.HumanResources.Employee;

Występują odwołania niejawna bazy danych podczas Transact-SQL Instrukcja nie określono bazy danych, na przykład:

SELECT BusinessEntityID, LoginID, NationalIDNumber
FROM HumanResources.Employee;

Do rozpoznania odwołania niejawna bazy danych SQL Server jest koncepcja bieżącej bazy danych.Każdego połączenia z wystąpienie SQL Server bazy danych ma zawsze zestaw jako bie¿¹cej bazy danychWszystkie odniesienia obiektów, które nie określają nazwę bazy danych są przyjmowane jako odnoszą się do bieżącej bazy danych.Na przykład, jeśli połączenie zostało AdventureWorks2008R2 zestaw jako bieżącej bazy danych, dowolna instrukcja odwołuje się do obiektu o nazwie Product jest rozwiązywana Product tabela w AdventureWorks2008R2.

Domyślna baza danych

Każdy SQL Server Logowanie ma domyślna baza danych.W czas logowania jest zdefiniowany przez element członkowski sysadmin ustalona roli serwera, domyślna baza danych dla logowania można określić.Jeżeli nie określono domyślna baza danych, master bazy danych staje się domyślna baza danych dla logowania.Domyślna baza danych dla identyfikatora logowania można później zmienić za pomocą sp_defaultdb procedura składowana.

Gdy podczas pierwszego połączenia z wystąpienie SQL Server, domyślna baza danych dla logowania jest zwykle wykonywane bieżącej bazy danych.Jednak określić konkretnej bazy danych jako połączenia w bieżącej bazie danych w czas.To żądanie zastępuje domyślna baza danych wyznaczonych dla logowania.Bazy danych na żądanie połączenia można określić w następujący sposób:

  • W polecenie sqlcmd narzędzia, określ nazwę bazy danych za pomocą /d przełączyć.

  • W modelu ADO, określ nazwę bazy danych w Initial Catalog właściwość obiektu połączenia ADO.

  • W SQL Server macierzystego klienta dostawca OLE DB, określ nazwę bazy danych w DBPROP_INIT_CATALOG właściwość.

  • W SQL Server sterownik ODBC macierzystym klienta zestaw nazwę bazy danych w danych ODBC źródło za pomocą bazy danych pole Kreatora konfiguracji DSN Microsoft SQL Server lub bazy danych = parameter na wywołanie SQLConfigDataSource.Bazy danych można również określić = na wywołanie SQLDriverConnect lub SQLBrowseConnect.

Wybieranie bazy danych

Można przełączać bieżącej bazy danych ustawienie podczas połączenia z wystąpienie SQL Server.To jest zwany przy użyciu lub Wybieranie bazy danych.Przełączanie z bieżącej bazy danych, w następujący sposób:

  • Wykonanie Transact-SQL Użycie database_name instrukcja, niezależnie od bazy danych używanej aplikacji API.

  • W SQL Server Management Studio, kliknij Nową kwerendę.Z paska narzędzi kwerendy Wybierz bazę danych z listy dostępnych baz danych.

  • W SQL Server ClientODBC macierzysty sterownik wywołania SQLSetConnectAttr do zestaw atrybut połączenia SQL_ATTR_CURRENT_CATALOG.

    Ostrzeżenie

    W wielu Transact-SQL przykłady odwołań w SQL Server Books Online, pierwsza linia kodu w przykładzie jest USE AdventureWorks2008R2.Gwarantuje to, że przykładzie wykonywana jest wyraźnie określonej bazy danych zamiast bieżącego kontekstu bazy danych.