SQL Server Express LocalDB リファレンス - インスタンスの ApiSQL Server Express LocalDB Reference - Instance APIs

適用対象:○SQL Server XAzure SQL DatabaseXAzure SQL Data Warehouse XParallel Data Warehouse THIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

従来のサービスベースの SQL Server 環境で、単一のコンピューターにインストールされた個々の SQL Server インスタンスは、物理的に独立しています。つまり、各インスタンスは独立したバイナリ セットを持っており、独立したサービス プロセスの下で実行されます。インストールと削除も個別に行われる必要があります。In the traditional, service-based SQL Server world, individual SQL Server instances installed on a single computer are physically separated; that is, each instance must be installed and removed separately, has a separate set of binaries, and runs under a separate service process. ユーザーが接続する先の SQL Server インスタンスは、SQL Server インスタンス名を使用して指定されます。The SQL Server instance name is used to specify which SQL Server instance the user wants to connect to.

SQL Server Express LocalDB インスタンス API は、簡略化された "軽量な" インスタンス モデルを使用しています。The SQL Server Express LocalDB instance API uses a simplified, “light” instance model. 個々の LocalDB インスタンスは、ディスク上とレジストリ内で独立していますが、同じ 1 組の共有 LocalDB バイナリを使用します。Although individual LocalDB instances are separated on the disk and in the registry, they use the same set of shared LocalDB binaries. また、LocalDB ではサービスが使用されません。LocalDB インスタンスは、LocalDB インスタンス API 呼び出しを介して要求時に起動されます。Moreover, LocalDB does not use services; LocalDB instances are launched on demand through LocalDB instance API calls. LocalDB では、ユーザーが使用する LocalDB インスタンスを指定するために、インスタンス名が使用されます。In LocalDB, the instance name is used to specify which of the LocalDB instances the user wants to work with.

個々の LocalDB インスタンスは、常に単一のユーザーによって所有されます。インスタンス共有が有効化されていない限り、表示およびアクセスが可能になるのは、そのユーザーのコンテキストからのみです。A LocalDB instance is always owned by a single user and is visible and accessible only from this user’s context, unless instance sharing is enabled.

厳密には、LocalDB インスタンスは従来の SQL Server インスタンスとは異なりますが、意図されている用途はほぼ同じです。Although technically LocalDB instances are not the same as traditional SQL Server instances, their intended use is similar. 呼び出されたインスタンスこの類似性を強調しより直感的な SQL Server のユーザーにします。They are called instances to emphasize this similarity and to make them more intuitive to SQL Server users.

LocalDB では、自動インスタンス (AI) と名前付きインスタンス (NI) という 2 種類のインスタンスがサポートされています。LocalDB supports two kinds of instances: automatic instances (AI) and named instances (NI). LocalDB インスタンスの識別子は、インスタンス名です。The identifier for a LocalDB instance is the instance name.

自動 LocalDB インスタンスAutomatic LocalDB Instances

自動 LocalDB インスタンスは、"パブリック" です。ユーザーのために自動的に作成および管理され、任意のアプリケーションから使用できます。Automatic LocalDB instances are “public”; they are created and managed automatically for the user and can be used by any application. どのバージョンの LocalDB に対しても、ユーザーのコンピューターにインストールされている自動 LocalDB インスタンスが 1 つ存在します。One automatic LocalDB instance exists for every version of LocalDB that is installed on the user’s computer.

自動 LocalDB インスタンスを使用すると、シームレスなインスタンス管理を実行できます。Automatic LocalDB instances provide seamless instance management. ユーザーがインスタンスを作成する必要はありません。The user does not need to create the instance. これにより、ユーザーはアプリケーションのインストールや、複数の異なるコンピューターへの移行を容易に行うことができます。This enables users to easily install applications and to migrate to different computers. 対象コンピューターに指定バージョンの LocalDB がインストールされている場合、そのコンピューターでは、同じバージョンの自動 LocalDB インスタンスも使用できます。If the target computer has the specified version of LocalDB installed, the automatic LocalDB instance for that version is also available on that computer.

自動インスタンス管理Automatic Instance Management

ユーザーは、自動 LocalDB インスタンスを作成する必要はありません。A user does not need to create an automatic LocalDB instance. 指定バージョンの LocalDB がユーザーのコンピューターにインストールされている場合、インスタンスは、初回使用時に自動的に作成されます。The instance is lazily created the first time the instance is used, provided that the specified version of LocalDB is available on the user’s computer. ユーザーから見ると、LocalDB バイナリが存在する場合は、自動インスタンスが必ず存在するということになります。From the user’s point of view, the automatic instance is always present if the LocalDB binaries are present.

自動インスタンスには、削除、共有、共有解除など、その他のインスタンス管理操作も使用できます。Other instance management operations, such as Delete, Share, and Unshare, also work for automatic instances. 特に、自動インスタンスを削除すると、そのインスタンスが効果的にリセットされ、次回の起動操作時に再作成されます。In particular, deleting an automatic instance effectively resets the instance, which will be re-created on the next Start operation. システム データベースが破損した場合は、自動インスタンスの削除が必要になる場合があります。Deleting an automatic instance may be required if the system databases become corrupted.

自動インスタンスの名前付け規則Automatic Instance Naming Rules

自動 LocalDB インスタンスのインスタンス名には特殊なパターンがあり、これは予約済み名前空間に属します。Automatic LocalDB instances have a special pattern for the instance name that belongs to a reserved namespace. このようなパターンが必要になるのは、名前付き LocalDB インスタンスと名前が競合するのを防ぐためです。This is necessary to prevent name conflicts with named LocalDB instances.

自動インスタンス名は、LocalDB ベースライン リリース バージョン番号の前に "v" という 1 文字が付いた名前になります。The automatic instance name is the LocalDB baseline release version number preceded by a single “v” character. 言い換えると、"v" の後に番号を 2 つ付加し、番号と番号の間にピリオドを 1 つ挿入した形 ("v11.0"、"V12.00" など) になります。This looks like “v” plus two numbers with a period between them; for example, v11.0 or V12.00.

無効な自動インスタンス名の例を次に示します。Examples of illegal automatic instance names are:

  • 11.0 (先頭の "v" 文字がありません)11.0 (missing the “v” character at the beginning)

  • v11 (ピリオドと 2 番目のバージョン番号がありません)v11 (missing a period and the second number of the version)

  • v11.v11. (2 番目のバージョン番号がありません)(missing the second number of the version)

  • v11.0.1.2 (バージョン番号の数が 2 つを超えています)v11.0.1.2 (version number has more than two parts)

名前付き LocalDB インスタンスNamed LocalDB Instances

名前付き LocalDB インスタンスは、"プライベート" です。インスタンスは、そのインスタンスの作成と管理を行う単一のアプリケーションによって所有されます。Named LocalDB instances are “private”; an instance is owned by a single application that is responsible for creating and managing the instance. 名前付き LocalDB インスタンスを使用すると、そのインスタンスを分離することで、パフォーマンスの向上を図ることができます。Named LocalDB instances provide isolation and improve performance.

名前付きインスタンスの作成Named Instance Creation

名前付きインスタンスは、ユーザーが LocalDB 管理 API を通じて明示的に作成するか、マネージ アプリケーションの app.config ファイルを通じて暗黙的に作成する必要があります。The user must create named instances explicitly through the LocalDB management API, or implicitly through the app.config file for a managed application. この API は、マネージ アプリケーションでも使用できます。A managed application may also use the API.

各名前付きインスタンスには、特定の LocalDB バージョンが関連付けらています。つまり、各名前付きインスタンスは、LocalDB バイナリの特定のセットを指しています。Each named instance has an associated LocalDB version; that is, it points to a specified set of LocalDB binaries. 名前付きインスタンスのバージョンは、インスタンス作成時に設定されます。The version for the named instance is set during the instance creation process.

名前付きインスタンスの名前付け規則Named Instance Naming Rules

LocalDB インスタンス名は 128 文字までの合計持つことができます (によって制限されます、 sysnameデータ型)。A LocalDB instance name can have up to a total of 128 characters (the limit is imposed by the sysname data type). これは、従来の SQL Server インスタンス名と比較すると、大きく異なります。従来は、16 の ASCII 文字で構成される NetBIOS 名に制限されていました。This is a significant difference compared to traditional SQL Server instance names, which are limited to NetBIOS names of 16 ASCII characters. この相違が生じたのは、ユーザーが従来より自由にインスタンス名を選択できるように、LocalDB ではデータベースがファイルとして扱われ、ファイルベースのセマンティクスが使用されるようになったためです。The reason for this difference is that LocalDB treats databases as files, and therefore implies file-based semantics, so it’s intuitive for users to have more freedom in choosing instance names.

LocalDB のインスタンス名には、ファイル名コンポーネント内で有効な任意の Unicode 文字を使用できます。A LocalDB instance name can contain any Unicode characters that are legal within the filename component. ファイル名のコンポーネントに無効な文字が一般に、次の文字を含める: ASCII または Unicode 文字が 1 から 31、引用符 (") より小さい (<)、大なり (>)、パイプ (|)、バック スペース (\b)、タブ (\t)、コロン (:)、アスタリスク (*)疑問符 (?)、円記号 (\)、スラッシュ (/) を転送します。Illegal characters in a filename component generally include the following characters: ASCII/Unicode characters 1 through 31, as well as quote ("), less than (<), greater than (>), pipe (|), backspace (\b), tab (\t), colon (:), asterisk (*), question mark (?), backslash (\), and forward slash (/). null 文字 (\0) は、文字列の終端として許可されています。最初に検出された null 文字以降は、すべての文字が無視されます。Note that the null character (\0) is allowed because it is used for string termination; everything after the first null character will be ignored.

注意

無効な文字はオペレーティング システムによって異なり、今後のリリースで変わることもあります。The list of illegal characters may depend on the operating system and may change in future releases.

インスタンス名の先頭と末尾の空白は無視され、トリミングされます。Leading and trailing white spaces in instance names are ignored and will be trimmed.

名前の LocalDB をという名前の競合を回避するには、インスタンスことはできません、自動インスタンスの名前付けパターンに続く名前「自動インスタンス名前付け規則」で既に説明したようTo avoid naming conflicts, named LocalDB instances cannot have a name that follows the naming pattern for automatic instances, as described earlier in “Automatic Instance Naming Rules.” 効果的に自動インスタンスの名前付けパターンに続く名前を持つ名前付きインスタンスを作成する場合は、既定のインスタンスを作成します。An attempt to create a named instance with a name that follows the automatic instance naming pattern effectively creates a default instance.

SQL Server Express LocalDB リファレンス トピックSQL Server Express LocalDB Reference Topics

SQL Server Express LocalDB ヘッダーとバージョン情報SQL Server Express LocalDB Header and Version Information
LocalDB インスタンス API を見つけるためのヘッダー ファイル情報とレジストリ キーを提供します。Provides header file information and registry keys for finding the LocalDB instance API.

コマンド ライン管理ツール: SqlLocalDB.exeCommand-Line Management Tool: SqlLocalDB.exe
コマンド ラインから LocalDB インスタンスを管理するツールである SqlLocalDB.exe について説明します。Describes SqlLocalDB.exe, a tool for managing LocalDB instances from the command line.

LocalDBCreateInstance 関数LocalDBCreateInstance Function
LocalDB インスタンスを新規作成するための関数について説明します。Describes the function to create a new LocalDB instance.

LocalDBDeleteInstance 関数LocalDBDeleteInstance Function
LocalDB インスタンスを削除する関数について説明します。Describes the function to remove a LocalDB instance.

LocalDBFormatMessage 関数LocalDBFormatMessage Function
LocalDB エラーのローカライズされた説明を返す関数について説明します。Describes the function to return the localized description for a LocalDB error.

LocalDBGetInstanceInfo 関数LocalDBGetInstanceInfo Function
LocalDB インスタンスの情報 (バージョン情報、存在するかどうか、実行中かどうかなど) を取得する関数について説明します。Describes the function to get information for a LocalDB instance, such as whether it exists, version information, whether it is running, and so on.

LocalDBGetInstances 関数LocalDBGetInstances Function
指定されたバージョンの LocalDB インスタンスをすべて返す関数について説明します。Describes the function to return all the LocalDB instances with a specified version.

LocalDBGetVersionInfo 関数LocalDBGetVersionInfo Function
指定された LocalDB バージョンの情報を返す関数について説明します。Describes the function to return information for a specified LocalDB version.

LocalDBGetVersions 関数LocalDBGetVersions Function
コンピューターにインストールされているすべての LocalDB バージョンを返す関数について説明します。Describes the function to return all LocalDB versions available on a computer.

LocalDBShareInstance 関数LocalDBShareInstance Function
指定された LocalDB インスタンスを共有するための関数について説明します。Describes the function to share a specified LocalDB instance.

LocalDBStartInstance 関数LocalDBStartInstance Function
指定された LocalDB インスタンスを起動する関数について説明します。Describes the function to start a specified LocalDB instance.

LocalDBStartTracing 関数LocalDBStartTracing Function
ユーザーの API トレースを有効にする関数について説明します。Describes the function to enable API tracing for a user.

LocalDBStopInstance 関数LocalDBStopInstance Function
指定された LocalDB インスタンスの実行を停止する関数について説明します。Describes the function to stop a specified LocalDB instance from running.

LocalDBStopTracing 関数LocalDBStopTracing Function
ユーザーの API トレースを無効にする関数について説明します。Describes the function to disable API tracing for a user.

LocalDBUnshareInstance 関数LocalDBUnshareInstance Function
指定された LocalDB インスタンスの共有を停止する関数について説明します。Describes the function to stop sharing a specified LocalDB instance.