zoukankan      html  css  js  c++  java
  • SQLSERVER 实现带参数的游标

    from:http://lwlzyjl.cnblogs.com/
    方法一:
    CREATE   TABLE   #tabTmp(id   int)  
      
    INSERT   #tabTmp   EXECUTE('SELECT   id   FROM   '+@TableName)  
       
      
    declare   curOne   cursor   for    
      
    SELECT   id   FROM   #tabTmp  
      
    open   curOne  
      
    FETCH   NEXT   from   curOne   into     @ID

    方法二:

    exec('
        declare curOne cursor global
         for
    ' + @aSql);
           declare @str nvarchar(20);
        
    open curOne 
        
    fetch  curOne into @str;
           while(@@fetch_status=0)
           begin
           ...
          
    fetch  curOne into @str;
           end;
           close curone;
           deallocate curone;

    相比之下ORACLE用起来真是直观很多
      CURSOR   c_get_f_name  
                  (  
                      id   INT  
                  )  
                IS    
                  SELECT   F_ID,   F_NAME  
                      FROM   F_INFO  
                      WHERE   (F_ID   IN(  
                                                  SELECT   F_ID  
                                                      FROM   A_DOT  
                                                      WHERE   (A_ID   =   id)));
  • 相关阅读:
    java (java.exe) 解释器 -D 选项
    Ubuntu 12.04.3 X64 使用 NFS 作为文件共享存储方式 安装 Oracle11g RAC
    Ubuntu下 Oracle sqldeveloper中文目录、文件,select查询结果中:中文乱码
    行测题型
    Left join on where 区别
    常见公文——决定和请示
    宜家沙发测评
    "放管服"改革 清单
    shell && and ||
    ORA-01722: invalid number
  • 原文地址:https://www.cnblogs.com/baishahe/p/1185334.html
Copyright © 2011-2022 走看看