SqlServer数据库配置

    默认情况下,系统会为应用程序创建一个Sql Express的数据库示例,该数据库示例位于App_Data文件夹下,名称是ASPNETDB.MDF。只要稍微配置一下Web.config文件,就可以实现ASP.NET2.0带来的新特性。如果我们想在Sql Server 2000上实现这些新特性也是完全可以做到的,只需要配置下数据库就OK了。
    配置Sql Server 2000可以用aspnet_reqsql工具来完成。一种方法是用带有命令行的aspnet_regsql,还有一种方法是直接使用aspnet_regsql。第二种方法简单快捷,下面对二种方法进行详细的说明。
    一、使用带有命令行的aspnet_regsql
    Aspnet_regsql.exe 文件位于 Web 服务器上的 [drive:]\WINDOWS\Microsoft.NET\Framework\versionNumber 文件夹中。

SQL 连接选项 

选项

说明

-?

在命令窗口中显示 Aspnet_regsql.exe 帮助文本。

-W

在向导模式下运行该工具。如果未指定任何命令行参数,那么这是默认设置。

-C <connection string>

指定要连接到正在运行 SQL Server 并且将安装或者已经安装数据库的计算机的连接字符串。如果您仅指定服务器 (-S) 和登录(-U -P -E)信息,则此选项不是必需的。

-S <server>

指定正在运行 SQL Server 并且将安装或者已安装数据库的计算机的名称。

-U <login ID>

要用来登录的 SQL Server 用户 ID。此选项还要求使用密码 (-P) 选项。如果要使用 Windows 凭据 (-E) 进行身份验证,则此选项不是必需的。

-P <password>

要用来登录的 SQL Server 密码。此选项还要求使用用户 ID (-U) 选项。如果要使用 Windows 凭据 (-E) 进行身份验证,则此选项不是必需的。

-E

使用当前登录用户的 Windows 凭据进行身份验证。

-sqlexportlonly <filename>

生成可用于添加或移除指定功能的 SQL 脚本文件。不执行指定的操作。

应用程序服务选项 

选项

说明

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

添加对一项或多项 ASP.NET 应用程序服务的支持。可以同时或单独指定服务标识符。下列标识符用于 ASP.NET 应用程序服务。

all -- 所有的服务,包括由服务共享的通用表和存储过程。

m -- 成员资格

r -- 角色管理器

p -- 配置文件

c -- Web 部件个性化设置

w -- Web 事件

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

移除对一项或多项应用程序服务的支持。可以同时或单独指定服务标识符。下列标识符用于 ASP.NET 应用程序服务。

all -- 所有的服务,包括由服务共享的通用表和存储过程。

m -- 成员资格

r -- 角色管理器

p -- 配置文件

c -- Web 部件个性化设置

w -- Web 事件

-Q

在安静模式下运行该工具,并且在移除应用程序服务之前不进行确认。

-d <database>

指定要创建或修改以便与应用程序服务一起使用的数据库的名称。如果未指定数据库,则使用默认数据库名称“aspnetdb”

SQL 缓存依赖项选项(用于 Microsoft SQL Server 7.0Microsoft SQL Server 2000 SQL Server 2005 

选项

说明

-d <database>

指定要与 SQL 缓存依赖项一起使用的数据库的名称。还可以选择使用连接字符串选项 -C 指定该数据库。

-ed

SQL 缓存依赖项启用数据库。

-dd

SQL 缓存依赖项禁用数据库。

-et

SQL 缓存依赖项启用表。在参数字符串中还必须包括 -t 选项。

-dt

SQL 缓存依赖项禁用表。在参数字符串中必须包括 -t 选项。

-t <table>

指定要启用或禁用以便与 SQL 缓存依赖项一起使用的表名。此选项必须与 -et -dt 选项一起使用。

-lt

列出所有为 SQL 缓存依赖项启用的表。

会话状态选项 

选项

说明

-d <database>

指定要存储会话状态的数据库的名称。如果将 -sstype 设置为c,则必须使用此选项。

-ssadd

添加对 SQL Server 模式会话状态的支持。

-ssremove

移除对 SQL Server 模式会话状态的支持。

-sstype t|p|c

指定要使用的会话状态的类型:

t -- 临时。会话状态数据存储在 SQL Server tempdb 数据库中。用于管理会话状态的存储过程安装在 SQL Server ASPState 数据库中。如果重启 SQL,数据不会保持。这是默认设置。

p -- 持久。会话状态数据和存储过程均存储在 SQL Server ASPState 数据库中。

c -- 自定义。会话状态数据和存储过程均存储在自定义数据库中。必须使用 -d 选项指定数据库名。


    示例代码:
    aspnet_regsql -A p -E
    执行了以上代码后,就完成了对实现profile的数据库配置,在SqlServer2000中生成了四张表和三张视图,还有很多存储过程。
下图是在Visio中生成的,到这里数据库的配置就基本完成了。
   

    第二种实现的方法:直接运行aspnet_regsql.exe工具。很简单的,我就不细说了。下图是数据库表的截图。
    事情到这里还没有结束,还需要把Web.config文件稍微修改一下。
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
  
<appSettings/>
  
<connectionStrings>
    
<add name="strConn" 
         connectionString
="Data Source=.;Initial Catalog=aspnetdb;Integrated Security=True"
         providerName
="System.Data.SqlClient" />
  
</connectionStrings>
  
<system.web>
    
<profile defaultProvider="SqlProvider">
      
<providers>
        
<clear />
        
<add name="SqlProvider" connectionStringName="strConn" type="System.Web.Profile.SqlProfileProvider" applicationName="AppName" />          
      
</providers>
    
</profile>
    
<compilation debug="true"/>    
    
<authentication mode="Form"/>
  
</system.web>
</configuration>
posted on 2006-10-24 20:51  头发乱了  阅读(2505)  评论(0编辑  收藏  举报