`
txf2004
  • 浏览: 7077660 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Powerbuilder中常用SQL语句实例

阅读更多

任何对sql类数据库操作的语言必学的:),下面的是PB版本,有一些PB的特性.

SQL语句

sql语句以;结束,可写成多行形式而不用&

1SELECT

注意:变量前加:

一个例子:

SELECT Employee.Emp_id,Employee.Emp_name,

Employee.Emp_salary,Dept.Dept_name

FROM Employee,Dept

WHERE (Emp_name like ''''%'''')AND (Emp_sex='''''''')

AND Employee.Dept_id=Dept.Dept_id

ORDER BY Employee.Emp_id;

给变量的例子:

Dec Emp_salary

SELECT max(Emp_salary)

INTO :Emp_salary

FROM Employee;

2INSERT

一个例子:

Int Emp_nbr

String Emp_name

Emp_nbr=Integer(sle_number.Text)

Emp_name=sle_name.Text

INSERT INTO Employee(employee.Emp_nbr,employee.Emp_name)

VALUES(:Emp_nbr,:Emp_name)

USING Emp_tran;

3UPDATE

一个例子:

UPDATE Employee//表名

SET emp_name=:sle_Name.Text //修改

WHERE Employee.emp_nbr=:Emp_nbr;//修改条件

4DELETE

一个例子:

DELETE FROM Employee //从表Employee

WHERE Emp_nbr <100;删除条件满足的记录

5CONNECTDISCONNECT

执行DISCONNECT前自动执行COMMIT

6COMMITROLLBACK

7、使用游标(用来保存多条记录操作)

DECLARE,OPEN,FECTH...INTO...:NAME,CLOSE,DELETE(删除游标指向的记录),UPDATE(修改游标指向的记录)

利用游标打开多个记录的例子

//声明powerscript变量,存放读出的雇员姓名

String emp_cur CURSOR FOR

SELECT emp_name FROM EMPLOYEE

WHERE emp_state=:sle_1.text;

//打开游标,

执行SELECT语句

OPEN emp_cur;

//从结果集中取第一条记录

FETCH emp_cur INTO "emp_name_var;

//判断FETCH语句执行情况

IF SQLCA.SQLCode<0 THEN

MessageBox("Datebase Error",&//显示错误信息

SQLCA.SQLErrText,Exclamation!)

RETURN

END IF

//如果FETCH语句执行正确,用循环语句逐条取结果集中的记录,到取完

DO WHILE SQLCA.SQLCode=0 //是否取完数据

//把取出的雇员姓名加入下拉列表框中

dlbl_1.additem(emp_name_var)

//继续从结果集中取下一符合条件的数据

FETCH emp_cur INTO :emp_name_var;

<place w:st="on"><span lang="EN-US" style="FONT-SIZE: 14pt">LOOP</span></place>

//关闭游标

CLOSE emp_cur;

8、处理BLOB型数据(大部分语句只能对一条记录进行操作,多余则出错)

SELECTBLOB,

一个例子:

//声明BLOB型变量Emp_id_pic,用语存放Emp_pic列的数据

Blob Emp_pic

SELECTBLOB Emp_pic

INTO :Emp_id_pic

FROM Employee

WHERE Employee.Emp_Id="001"

USING Emp_tran;

//如果执行正确,在pb_1中显示照片

IF Emp_tran.SQLCode=0 THEN

pb1.SetPicture(Emp_id_pic)

END IF

UPDATEBLOB

一个例子:

Integer fh

Blob Emp_id_pic

//以读方式打开一个流模式文件

fh=FileOpen("c:\emp_100.bmp",StreamMode!)

//判断打开文件是否成功

IF fh<>-1 THEN

//从文件中读取图形数据存于Blob型变量

FileRead(fh,emp_id_pic)

//关闭文件

FileClose(fh)

//修改表的emp_pic

UPDATEBLOB Employee

SET emp_pic=:Emp_id_pic

WHERE EMp-Id="001";

END IF

IF SQLCA.SQLNRows>0 THEN//判断是否返回结果

COMMIT;/提交事务

ELSE

ROLLBACK;//回滚事务

END IF

9、动态SQL语句

事务对象,动态描述区(SQLSA),动态描述区(SQLCA)

示例1

String Mysql

Mysql ="CREAT TABLE Employee"&

+"(emp_id char(6)not null,"&

+"emp_hbr integer not null,"&

+"dept_id integer not null,"&

+"emp_fname char(10) not null,"&

+"emp_lname char(20) not null)"

EXCUTE IMMEDIATE :Mysql;

实例2

EXCUTE IMMEDIATE "DROP TABLE Employee" USING My_trans;

等价于:

String Mysql

Mysql+"DROP TABLE Employee"

EXCUTE IMMEDIATE :Mysql USING My_trans

实例3

//在表中插入记录

Int Dept_id_var=156

String Dept_name_var

SetNull(Dept_name_var)

CONNECT;//

PREPARE SQLCA //prepare的作用???

FROM "INSERT INTO dept VALUES(?,?)";

EXCUTE SQLCA USING :Dept_id_var,:Dept_name_var

分享到:
评论

相关推荐

    PowerBuilder中动态SQL语句的使用.pdf

    PowerBuilder支持动态SQL语句的四种格式及其使用方法,并通过实例进行详细说明。 在PowerBuilder中,动态SQL语句可以通过 CLOSE、DECLARE、FETCH、OPEN 和 EXECUTE 等语句的动态形式实现。PowerBuilder提供了...

    PowerBuilder中动态SQL语句的应用.pdf

    在PowerBuilder中,动态SQL语句是一种重要的技术,它允许程序员在程序运行时构造和执行SQL语句,而不是在编译时确定,这为开发提供了灵活性。 动态SQL语句主要有四种类型,每一种类型针对不同的应用场景,下面是...

    浅析PowerBuilder下动态SQL语句.pdf

    PowerBuilder 动态SQL语句应用分析 PowerBuilder 是目前最流行的开发工具之一,广泛应用于各个行业,包括银行、证券、保险等金融行业。PowerBuilder 提供了动态 SQL 语句的功能来支撑对数据库的访问。但是,传统的...

    在PowerBuilder中使用动态SQL语句访问数据库.pdf

    在数据库应用开发中,PowerBuilder是常用的一种高效开发工具,它特别适用于数据库系统的开发。PowerBuilder的核心优势之一是提供强大的数据库访问能力,其中动态SQL语句是其一大特色功能,允许开发者在程序执行时...

    powerbuilder10应用基础及实例分析

    在 PowerBuilder 10 应用开发实例中,通常涉及以下几个步骤: 1. **设计用户界面**:使用窗口设计器创建用户界面,添加所需的控件,如按钮、文本框等,并设置其属性。 2. **创建数据窗口**:选择合适的数据源,...

    《PowerBuilder9.0实用教程》的实例源代码

    6. PowerBuilder的其他高级特性:如.NET集成、Web服务调用、报表生成等,也可能在实例中有所体现,帮助开发者提升开发效率和应用的可扩展性。 通过对这些实例的学习和实践,开发者不仅能掌握PowerBuilder的基本操作...

    powerbuilder的实例

    在实例中,你可以创建一个DataWindow,连接到数据库,设置SQL语句,然后在窗口中展示这些数据,同时学习如何处理用户的输入和更新数据库。 此外,PowerBuilder支持事件驱动编程,这意味着当用户与UI交互时,可以...

    PowerBuilder编写的项目实例

    通过DataWindow对象,开发者可以直接在SQL语句中编写复杂的查询,或者使用DataWindow的API进行数据操作,如插入、更新和删除记录。 在提供的压缩包中,你可能会找到以下类型的文件: 1. PBL(PowerBuilder Library...

    PowerBuilder 9.0软件项目开发实践完整版(pdf)

    书中还特别强调了SQL语句在数据库操作中的重要性,SQL是数据库查询和管理的基础语言,读者可以学习如何在PowerBuilder中使用SQL语句进行数据的增删改查操作。在书中,还讲解了PowerBuilder 9.0中常用控件的使用,...

    powerbuilder8.0实例教程源代码

    源代码中可能会有自定义类的示例,学习者可以通过这些实例了解如何在PowerBuilder中实现面向对象的设计。 6. 用户界面设计: PowerBuilder提供了丰富的控件和布局工具,使得UI设计变得简单。通过实例源代码,学习...

    powerbuilder 学习实例

    【描述】:在“POWER BUILDER 的一些基本操作实例”中,学习者可以逐步了解和掌握如何使用PowerBuilder进行数据库操作。这些实例可能包括创建数据窗口、设计用户界面、编写SQL语句以及数据库对象的管理等。对于初学...

    Powerbuilder 9.0实用教程代码+实例

    3. 数据窗口:数据窗口是PowerBuilder最具特色的组件,它允许开发者无需编写SQL语句就能实现对数据库的操作。数据窗口支持多种显示样式,如网格、图表、子窗口等,同时也支持各种数据库连接,包括ODBC、OLE DB等。 ...

    PowerBuilder8数据库系统开发实例导航

    《PowerBuilder8数据库系统开发实例导航》是一本针对PowerBuilder8.0的数据库系统开发教程,旨在帮助初学者快速入门并提升进阶技能。PowerBuilder是一款强大的可视化开发工具,尤其在数据库应用系统开发方面有着广泛...

    PowerBuilder 12.6入门视频教程下载(初级)

    14.自定义事件+自定制事件+使用SQL语句+游标 15.PB代码升级+全局函数 16.Window对象_窗体常用属性+常用事件open 17.常用事件close+closequery 18.常用事件Timer示例+窗口间信息传递 19.open事件实例+idle事件实现...

    powerbuilder数据窗口的增删改查

    在PowerBuilder的工作区中,选择“DataWindow”对象并添加到窗口或者控件中。然后在设计视图中,选择数据源为Oracle数据库表,PB会自动生成列结构。 4. **定义检索参数** 描述中提到的“定义检索参数”是数据窗口...

    PowerBuilder设计作品——订餐系统

    【PowerBuilder设计作品——订餐系统】是一款基于PowerBuilder开发的简单订餐应用程序,它在学生项目或教学环境中被广泛使用。PowerBuilder是一款强大的第四代编程语言(4GL),专为构建数据库应用而设计,其可视化...

    powerbuilder实例

    在"powerbuilder实例"这个压缩包中,你可能会找到一系列用于学习和实践的练习示例,这对于初学者或有经验的开发者来说都是宝贵的资源。 PowerBuilder的主要特性包括: 1. **可视化编程**:PowerBuilder提供了图形...

    powerbuilder 小实例

    TreeView是用户界面中常用的一种元素,能够以树形结构展示层次化的数据。 在PowerBuilder中,TreeView控件可以用来展示数据库中的数据,例如部门结构,每个节点代表一个部门,节点的子节点则表示该部门下的子部门或...

    PowerBuilder+Oracle项目开发实例详解

    书中会介绍如何配置Oracle环境,设置数据库连接,以及使用SQL语句进行数据管理。此外,还会涉及PL/SQL编程,用于创建存储过程、触发器等数据库对象,以实现更复杂的业务逻辑。 在"第4部分 源代码"中,读者可以找到...

Global site tag (gtag.js) - Google Analytics