将Session值储存于SQL Server中

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

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 &#39;EastRiver&#39; 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...