zoukankan      html  css  js  c++  java
  • 用来读取"最新消息"的存储过程

    Receiver 字段存储的值的格式为: aaa|bbb|ccc|、aaa|
    --select * from Messages
    --
    drop table #Msg001
    Create table #Msg001
        (MSort 
    varchar(50),
        MTopic 
    varchar(50),
        MSender 
    varchar(50),
        MSendTime 
    datetime,
        MReceiver 
    varchar(500),
        Mcontent 
    varchar(1000),
        MState 
    bit)


    declare @i int,@start int,@Receiver varchar(500),@Acc varchar(50),@ChName varchar(50),@AllChName varchar(500)
    declare @T1 varchar(50),@T2 varchar(50),@T3 varchar(50),@T4 datetime,@T5 varchar(500),@T6 varchar(1000),@T7 bit


    --定义游标
    declare Msg_cur scroll cursor for select Sort,Topic,Sender,SendTime,Receiver,Content,State from Messages
    open Msg_cur

    Fetch first from Msg_cur into @T1,@T2,@T3,@T4,@T5,@T6,@T7

    --select @Reciver=Receiver from Messages where Receiver='aaa|bit|01.02|'
    set @Receiver=@T5

    while @@fetch_status=0
    begin
        
    set @AllChName=''
        
    set @i=1
        
    while (@i>0)
        
    begin
            
    if @i=1
                
    set @start=@i
            
    else
                
    set @start=@i+1
            
            
    set @i=charindex('|',@Receiver,@i+1)
            
    if (@i>1)
            
    begin
                
    set @Acc=SUBSTRING(@Receiver,@start,@i-@start)
                
    set @ChName=(select UserName from Accounts_Users where Account=@Acc)
                
                
    --if (该IF语句用判断是否在最后加",")
                if (@i=len(@Receiver))
                
    select @AllChName=@AllChName+''+@ChName
                
    else
                
    select @AllChName=@AllChName+''+@ChName+','
                
    --end if
                --select @ChName,@AllChName,@i,@Receiver

            
    end
        
    end
    --将接收者的姓名替换后插入到临时数据库里
    insert into #Msg001(MSort,MTopic,MSender,MSendtime,MReceiver,MContent,MState)values(@T1,@T2,@T3,@T4,@AllChName,@T6,@T7)

    Fetch next from Msg_cur into @T1,@T2,@T3,@T4,@T5,@T6,@T7
    set @Receiver=@T5
    end

    --关闭游标
    close Msg_cur
    deallocate Msg_cur

    select #Msg001.*,Messages_Sort.Name from #Msg001 INNER JOIN Messages_Sort ON #Msg001.MSort =Messages_Sort.ID
    drop table #Msg001
  • 相关阅读:
    性能监控(5)–JAVA下的jstat命令
    内存分析工具-MAT(Memory Analyzer Tool)
    性能监控(4)–linux下的pidstat命令
    性能监控(3)–linux下的iostat命令
    性能监控(2)–linux下的vmstat命令
    性能监控(1)--linux下的top命令
    了解java虚拟机—在TALB上分配对象(10)
    了解java虚拟机—G1回收器(9)
    js 长按鼠标左键实现溢出内容左右滚动滚动
    html标签设置contenteditable时,去除粘贴文本自带样式
  • 原文地址:https://www.cnblogs.com/aipeli/p/280334.html
Copyright © 2011-2022 走看看