ASP.NET会话(Session)模式(5)
@on_fail_action = 2
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
-- 新建调度
EXECUTE @ReturnCode = msdb.dbo.sp_add_jobschedule
@job_id = @JobID,
@name = N'Start01', --调度名称
@enabled = 1,
@freq_type = 64 --“64”表示 当 SQLServerAgent 服务启动时运行
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
-- 将新建的作业添加到本地数据库
EXECUTE @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @JobID, @server_name = N'(local)'
IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
COMMIT TRANSACTION
GOTO EndSave
QuitWithRollback:
IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION
EndSave:
/******脚本结束******/
4、 设置 Web.config 内容
打开 Web.config → 找到 <sessionState> 节点内容 → 修改为以下内容即可:
<sessionState mode="SQLServer" sqlConnectionString ="data source=192.168.0.2; user id= SessionStateUser; password=123456" timeout="20" />
注意事项:
a)、sqlConnectionString 中不能出现 initial catalog 选项
b)、SQL Server Agent在此处的作用是清除数据库中已过期的 Session
c)、你若跳过了第三步,则 user id 需要用 sa 进行登录
d)、若sqlConnectionString 为 “data source=127.0.0.1;Trusted_Connection=yes”,则使用本地计算机ASPNET(Windows 2000 系统帐户)或 Network Service(Windows 2003 系统帐户)的身份登录数据库。要是数据库不允许上述用户登录,则报错;同样,即使上述帐户能成功登录,也要分配其 tempdb 的权限,理由是 Session 是保存在 tempdb 中的,若没有该 DataBase 的存取权限是行不滴。
作者 郑文亮
相关新闻>>
- 发表评论
-
- 最新评论 更多>>