当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 将Session值储存于SQL Server中

MSSQL
在SQL Server中建立定时任务,处理时间超过一天的记录
推荐:监控数据库性能的SQL语句汇总
SQL Server常用到的几个设置选项
SQL server 2000存储过程
sql server行转列问题终极解决
专家在线:SQL Server块日志恢复
通过内存配置来优化SQL Server的性能
为SQL Server构造灵活可靠的安全门
剖析SQL Server数据库扩展存储过程
专家在线:SQL Server的数据清理技术
SQL Server 2005中的所有权链
利用SQL Server数据库快照形成报表
SQL技巧:探索用户自定义数据类型
保护SQL服务器的安全-用户识别问题
一些SQL Server的应用实例
SQLSERVER中,数据库同步的实现
深入理解SQL Server 中的错误处理
三种SQL分页法效率分析
sql server 2005中的except和INTERSECT运算
SQL 视图效率和连接超时设置

MSSQL 中的 将Session值储存于SQL Server中


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 55 ::
收藏到网摘: n/a

一般情况下,我们喜欢使用Session储存我们的变量。Asp.Net提供了下面一些方法储存Session的值:
InProc
State Server
SQL Server
“InProc”表示我们使用传统ASP一样的方法储存Session的值,而且“State Server”则表示使用另外一台主机来储存Session的值。当然我们也能使用SQL Server储存值,我们这篇文章就专门用于讲解这种方法。
运行InstallSqlState.sql文件
首先需要在WinntMicrosoft.Net中找到InstallSqlState.sql文件,然后在SQL Server 中执行它。在我的机器中,它存在于E:WINNTMicrosoft.NETFrameworkv1.0.2914目录中。这个文件是微软自己提供的,里面有很全的SQL语句,大家放心使用。下图就是生成的数据表。
修改你的web.config文件,指定Session的mode为SQL Server
将web.config的sessionState部分改成:
<sessionState mode="SQLServer"
sqlConnectionString="data source=
WIN2000;userid=
sa;password=" cookieless= "false"timeout=
"20" />
创建Asp.Net Web Forms
下面就建立一个测试的ASP.net程序,使用Session程序这里就不用多说了,下面是我的程序的截图。这个程序只是简单的储存一个字符串数据于Session中,然后再显示这个数据在Label控件中。
现在所有的Session变量都储存在数据表中,而不是内存中了。你可打开ASPStateTempSessions表来查看这些Session数据了。
删除这些数据库和表
如果你不喜欢这个数据储存方式,看得实在是不爽,那么你可以把这些表和数据库完全删除掉。这个也不要担心这种删除会影响数据库(因为害怕误删除一些数据),因为微软同样也得供给你们一个删除SQL 文件,名叫UnintallSQLState.sql。它与IntallSQLState.sql一样放在.Net的Config目录中。