设置SQL Server会话数据库

时间:2009-12-10 21:37:37

标签: sql sql-server-2005

我注意到创建SQL Server数据库的SQL(InstallPersistSqlState.sql)基本上创建了数据库ASPState。如果我想说出不同的名称,我可以用我喜欢的数据库名称替换它吗?我理解脚本,我只是想确保ASPState不必是数据库名称。谢谢!

2 个答案:

答案 0 :(得分:3)

edit - 这是一个有希望的一些指令来更改会话表写入的默认对象:

使用模板文件在默认ASPState数据库以外的数据库上安装ASP.NET会话状态SQL对象。为此,请按照下列步骤操作:

  1. 通过复制两个模板文件来创建自己的脚本文件。
  2. 为您的数据库创建一个名称(例如MyASPStateDB)。
  3. 在您自己的脚本文件中,将所有出现的DatabaseNamePlaceHolder替换为您的数据库名称。
  4. 使用您自己的脚本文件安装和删除ASP.NET会话状态SQL对象。
  5. See full article here

    InstallPersistSqlState.Sql脚本只是将会话放入名为ASPState的表中,而不是将InstallSqlState.sql的其他方法添加到临时表中(这会在系统重启时产生一些波动风险)。在查看脚本之后,“ASPState”似乎不仅仅是表的任意名称 - 但是,测试运行可能是实际验证它的最佳方式。

    Some good reading on Session States and the Install Scripts above

答案 1 :(得分:1)

我想如果你愿意,你可以将名称更改为其他名称。如果在创建数据库之后更改数据库的名称,请确保引用该数据库的作业引用您选择的正确名称,否则在尝试清除过期的会话数据时作业可能会失败。您还可能需要在web.config SqlState连接字符串中指定“初始目录”值。我不确定,但我猜想如果ASP.NET在该连接字符串中找不到初始目录值,则默认使用“ASPState”。