共用方式為


建立 SQL Server 的應用程式服務資料庫

更新:2007 年 11 月

數個 ASP.NET 功能依賴於提供者,以管理從資料來源儲存和擷取資料。每個提供者都是資料來源特定的。ASP.NET 包含下列 ASP.NET 功能的 Microsoft SQL Server 提供者:

根據預設,每個 SQL Server 提供者都會使用本機的 Microsoft SQL Server Express 安裝,將資料儲存在自動產生的資料庫中。每個功能都可以個別使用,也可以與其他功能搭配使用。例如,您可以單獨使用角色管理,也可以將其與成員資格功能所管理的使用者資訊搭配使用。

預先設定的 SQL Server 提供者

安裝 ASP.NET 時,伺服器的電腦組態檔和 Web.config 檔會包含組態項目,該組態項目為依賴於提供者的每個 ASP.NET 功能指定 SQL Server 提供者。根據預設,這些提供者設定為連接至 SQL Server Express 的本機執行個體。如果計劃僅使用指定於電腦組態檔 connectionStrings 區段中的預設位置來使用 SQL Server Express,則完全不需執行資料庫的手動安裝。如果要使用在相同伺服器上執行的 SQL Server 標準版來設定資料庫,或者需要設定遠端 SQL Server 電腦,則需要使用這個工具。

注意事項:

Aspnet_regsql 工具不能配合以使用者執行個體模式執行的 SQL Server Express 本機安裝使用 (也就是說,連接字串包含 User Instance=true)。

使用 Aspnet_regsql.exe 安裝資料庫

ASP.NET 包含名為 Aaspnet_regsql.exe 的工具,用於安裝 SQL Server 提供者使用的 SQL Server 資料庫。Aspnet_regsql.exe 工具位於 Web 伺服器的 drive:\WINDOWS\Microsoft.NET\Framework\versionNumber 資料夾中。Aspnet_regsql.exe 可用於建立 SQL Server 資料庫,也可用於從現有資料庫加入或移除選項。

您可以在不使用任何命令列引數之情況下執行 Aspnet_regsql.exe,以執行精靈,引導您為執行 SQL Server 的電腦指定連接資訊,以及為所有支援的功能安裝或移除資料庫項目。您還可以將 Aspnet_regsql.exe 做為命令列工具執行,以指定要加入或移除之個別功能的資料庫項目。

注意事項:

在功能資料庫內安裝的資料庫項目將永遠由 SQL Server 資料庫擁有者帳戶 (dbo) 擁有。您必須使用取得 SQL Server 資料庫之 db_ddladmin 和 dd_securityadmin 角色許可的帳戶登入,才能安裝功能資料庫。不過,您不需要以 SQL Server 的系統管理員身分才可以安裝功能資料庫。

若要執行 Aspnet_regsql.exe 精靈,在執行 Aspnet_regsql.exe 時,請不使用任何命令列引數,如下列範例所示:

C:\WINDOWS\Microsoft.NET\Framework\<versionNumber>\aspnet_regsql.exe

您也可以將 Aspnet_regsql.exe 工具做為命令列公用程式執行。例如,下列命令會在執行 SQL Server 的本機電腦上安裝成員資格和角色管理的資料庫項目。

aspnet_regsql.exe -E -S localhost -A mr

下表描述 Aspnet_regsql.exe 工具支援的命令列選項。

選項

描述

-?

在命令視窗中列印 Aspnet_regsql.exe 工具說明文字。

-W

以精靈模式執行此工具。如果未指定任何命令列引數,這是預設值。

-C connection string

執行 SQL Server 的電腦的連接字串,該電腦上將安裝或已安裝資料庫。如果僅指定伺服器 (-S) 和登入 (-U 和 -P 或 -E) 資訊,則不需要這個選項。

-S server

執行 SQL Server 的電腦的名稱,該電腦上將安裝或已安裝資料庫。伺服器名稱還可以包含執行個體名稱,例如 .\INSTANCENAME。

-U login id

登入使用的 SQL Server 使用者 ID。這個選項還需要密碼 (-P) 選項。如果使用 Windows 認證 (-E) 驗證,則不需要這個選項。

-P password

登入使用的 SQL Server 密碼。這個選項還需要登入 ID (-U) 選項。如果使用 Windows 認證 (-E) 驗證,則不需要這個選項。

-E

使用目前登入使用者的 Windows 認證進行驗證。

-d database

要建立或修改的資料庫名稱。如果未指定資料庫,則會使用預設資料庫名稱 "aspnetdb"。

-sqlexportonly filename

產生可用於加入或移除指定功能的 SQL 指令碼檔。指定的動作不會執行。

-A all|m|r|p|c|w

加入對一或多個功能的支援。下列識別項用於 ASP.NET 功能。

識別項影響
all所有功能
m成員資格
r角色管理
p設定檔
cWeb 組件個人化
wWeb 事件

功能識別項可以一起指定,或個別指定,如下列範例所示。

aspnet_regsql.exe -E -S localhost -A mp

aspnet_regsql.exe -E -S localhost -A m -A p

-R all|m|r|p|c|w

移除對一或多個功能的支援。下列識別項用於 ASP.NET 功能。

識別項影響
all所有功能
m成員資格
r角色管理
p設定檔
cWeb 組件個人化
wWeb 事件

功能識別項可以一起指定,或個別指定,如下列範例所示。

aspnet_regsql.exe -E -S localhost -R mp

aspnet_regsql.exe -E -S localhost -R m -R p

-Q

以安靜模式執行此工具,且在移除功能之前不確認。

請參閱

概念

從 Web 應用程式存取 SQL Server

ASP.NET 設定檔提供者

ASP.NET 網站巡覽提供者

其他資源

建立及設定 SQL Server 的應用程式服務資料庫