免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3962 | 回复: 3
打印 上一主题 下一主题

动态sql编程语句的四种格式 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-03-08 17:21 |只看该作者 |倒序浏览
1,动态sql语句 格式1
   直接执行sql声明(sqlstatement)
   例程:
   string            Mysql
   Mysql = "CREATE TABLE Employee "&
    +"(emp_id integer not null,"&
    +"dept_id integer not null, "&
    +"emp_fname char(10) not null, "&
    +"emp_lname char(20) not null)"
   EXECUTE IMMEDIATE :Mysql ;


2.动态sql语句 格式2
  准备sql声明(sqlsa)
  执行sql声明(sqlsa)
  例程:
  INT        Emp_id_var = 56
  PREPARE SQLSA
     FROM "DELETE FROM employee WHERE emp_id=?" ;
  EXECUTE SQLSA USING :Emp_id_var ;


3.动态sql语句 格式3
  为动态传输区 声明 游标|进程  动态游标|进程
  根据sql声明(sqlca)准备动态传输区
  打开动态游标
  取出游标进程值
  关闭游标
  例程:
  integer Emp_id_var

  DECLARE my_cursor DYNAMIC CURSOR FOR SQLSA ;
  PREPARE SQLSA FROM "SELECT emp_id FROM employee" ;
  OPEN DYNAMIC my_cursor ;
  FETCH my_cursor INTO :Emp_id_var ;
  CLOSE my_cursor ;

4.动态sql 格式4
  为动态传输区 声明 游标|进程  动态游标|进程
  根据sql声明(sqlca)准备动态传输区
  写入动态描述区
  打开动态游标
  取出游标进程值
  关闭游标
  例程:

  string Stringvar, Sqlstatement
  integer Intvar
  Sqlstatement = "SELECT emp_id FROM employee"
  PREPARE SQLSA FROM :Sqlstatement ;
  DESCRIBE SQLSA INTO SQLDA ;
  DECLARE my_cursor DYNAMIC CURSOR FOR SQLSA ;
  OPEN DYNAMIC my_cursor USING DESCRIPTOR SQLDA ;
  FETCH my_cursor USING DESCRIPTOR SQLDA ;

  // If the FETCH is successful, the output
  // descriptor array will contain returned
  // values from the first row of the result set.
  // SQLDA.NumOutputs contains the number of
  // output descriptors.
  // The SQLDA.OutParmType array will contain
  // NumOutput entries and each entry will contain
  // an value of the enumerated data type ParmType
  // (such as TypeInteger!, or TypeString!).

  CHOOSE CASE SQLDA.OutParmType[1]
  CASE TypeString!
        Stringvar = GetDynamicString(SQLDA, 1)
    CASE TypeInteger!
        Intvar = GetDynamicNumber(SQLDA, 1)

  END CHOOSE
  CLOSE my_cursor ;

论坛徽章:
0
2 [报告]
发表于 2005-03-08 17:37 |只看该作者

动态sql编程语句的四种格式

good.
如果能说明这几种游标各自的特点和在哪种地方应用哪种游标就更好了。

论坛徽章:
0
3 [报告]
发表于 2005-03-11 21:16 |只看该作者

动态sql编程语句的四种格式

以上是本人翻译的资料。
如果谁有资料,请发一份给我。
如果是英文资料,我愿意翻译出来,和大家共享。

论坛徽章:
0
4 [报告]
发表于 2005-03-12 09:17 |只看该作者

动态sql编程语句的四种格式

不错!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP