zoukankan      html  css  js  c++  java
  • sqlserver 临时表理解

    临时表 作用域,生存周期
    
    显示调用Drop Table语句
    当局部临时表在存储过程内被创建时,存储过程结束也就意味着局部临时表被Drop。
    当前会话结束,在会话内创建的所有局部临时表都会被Drop。
    
    sqlserver 会话
    会话: 一个用户连接产生的所有上下文信息。一个查询分析器窗口就是一个会话
    -- 查看SQL阻塞信息
    with tmp as (
        select * from master..sysprocesses t where t.blocked != 0
        union all
        select b.* from master..sysprocesses b
            join tmp t on b.spid = t.blocked 
    )
    select t.spid, t.blocked, t.status, t.waittype, t.lastwaittype, t.waitresource, t.waittime
        , DB_NAME(t.dbid) DbName, t.login_time, t.loginame, t.program_name, dc.text
    from (select spid from tmp group by spid) s
        join master..sysprocesses t on s.spid = t.spid
        cross apply master.sys.dm_exec_sql_text(t.sql_handle) dc
    
    -- 查看所有会话的状态、等待类型及当前正在执行SQL脚本
    select t.spid, t.kpid, t.blocked, t.status, t.waittype, t.lastwaittype, t.waitresource, t.waittime
        , DB_NAME(t.dbid) DbName, t.login_time, t.last_batch, t.loginame, t.program_name, t.hostname, t.hostprocess
        , t.cmd, t.stmt_start, t.stmt_end, t.request_id, dc.text
    from    master.sys.sysprocesses t
        outer apply master.sys.dm_exec_sql_text(t.sql_handle) dc
    where    t.spid >= 50
     
    --查询所有会话
    select * from sys.dm_exec_sessions where session_id in (102,315);
    --查询会话对应的SQl
    select er.session_id, CAST(csql.text AS varchar(255)) AS CallingSQL
    from master.sys.dm_exec_requests er WITH (NOLOCK)
           CROSS APPLY fn_get_sql (er.sql_handle) csql
    where er.session_id =309
    
    会话的生存周期
    
    查询临时表
    use tempdb
    go
    select * from sys.objects where type='u' and name like'#%'
    
    1 会话中的临时表
    2 存储过程中的临时表
    3 EF链接数据库怎样叫一个会话
    4 ADO.net 如何叫一个会话
    5 Demo 批量把数据写入临时表,然后通过存储过程写入各实体表
  • 相关阅读:
    NHibernate 中in的使用方法,以及使用sql表达式
    C#调用存储过程,并且获得返回值和OutPut字符串
    NHibernate 中delete的使用方法
    SQL中Case when 方法的使用
    NHibernate 根据Model ID获取对象
    C# Excel导出数据和Excel导入数据帮助类
    查询五个月前到现在的数据
    NHibernate 中Between的使用方法
    jquery操作滚动条滚动到指定位置
    将DataReader转换为DataTable
  • 原文地址:https://www.cnblogs.com/zoumin123/p/7835972.html
Copyright © 2011-2022 走看看