SQL学习之五

光标:

                  数据库里的一个位置,来自查询的一条记录是光标的当前值或者当前行,  通常用于从数据库获得一个子集。  可以自动创建,也可以由程序员创建。

                  光标的声明:(不同的数据库,光标的声明是不一样的)

                 

               打开光标:open    cursor_name  [parameter1 ] [ ,  parameter2] . 如果是Oracle数据库,记得加方括号里的东西。

               从光标处获取数据:fetch   cursor_name {  into   : host_ variable

                                                    [ [   indicator  ]  : indicator_variable ]

                                                    [  indicator ]  :      indicator_variable ]] 

                                                    | using descriptor  }   此限于Orable数据库。对于mysql: fetch   cursor_name  into    variable_name;

                 关闭光标:close  cursor_name ,但是对于sql server 数据库,close前面最好加上关键字:deallocate。

 存储过程和函数:

                   存储过程是保存在数据库里的一组SQL语句或者函数,他们被编译,可以被数据库用户使用。函数被过程调用。不同的数据库创建存储过程的语法不同:

                  

                 

                   执行存储过程的语法也是不一样的:

                  

                 

                     对比单个的SQL语句,利用存储过程的优点在:语句已被保存和解析、支持模块化、可调用其他函数和语法、有更好的响应时间、提高了整体易用性。

触发器:

                触发器是存储过程的一种,可能导致过度io开销。

                 

               (注意不同的数据库触发器的建立不同,注意for each row的应用)。

                 drop  trigger trigger_name;

                 动态SQL:其通常被用作查询的语句,允许用户随时创建SQL语句。使用调用及接口可以创建动态SQL。

调用级接口(CLI):

                  用于把SQL语句嵌入到主机程序。在使用调用级接口时,根据主机编程语言的规则将SQL语言文本保存到一个变量里,利用这个变量在主机程序里执行SQL语句。常见的支持CLI的语言:cobol、ansic、pascal、fortran、ada。

            使用SQL生成SQL:GRANT  ENABLE TO 语句和双管道符号||的使用。比如要创建一个角色enable,将其授予100个用户,可以这么写:select  ‘ grant   enable  to ’  || username  || ‘;’ from  sys.dba_users;此例子使用了Oracle系统目录图。

             直接SQL(交互调用或者直接调用)嵌入SQL :  是在其他程序里使用SQL,通常以EXEC  SQL开始。例如在主机程序里嵌入SQL:
                     { host   programming  commands}

                     EXEC  SQL {SQL  statement } 

                                { more  hosr  programming   commands};

         窗口表格函数:对表格的一个窗口进行操作,基于这个窗口返回一个值。窗口表格函数的语法如下:argument  over ([partition  clause ] [ order  clause] [ prame  clause ]);大多数汇总函数是窗口表格函数,其次还有:rank()over,dense_rank()over,percent_rank()over,cume_dist()over,row_number()over。有局限性。

         使用XML:不同的数据库可以提供不同的函数来使用这个功能。

        

            

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值