bsp;JDBC 允许数据库中的Java 类去访问关系数据
在存储过程中使用 JDBC
§Java 存储过程的调用方法与 SQL 存储过程一样
§Java 存储过程要访问关系数据因而要求JDBC
§存储过程处于服务器-端 因而要使用 服务器-端JDBC
§不要求jConnect
在存储过程中使用 Java:
调用 JDBCTest.test( )
使用 Java 数据类型
§任何已安装的Java 类都可作为数据类型使用
§数据类型名称必须是完全限定的
§Java数据类型对大小写是敏感的
在数据库中使用 Java
§ CREATE 表 jdba.customer
(
id integer NOT NULL,
company_name CHAR(35) NOT NULL,
JName Adaptive Server Anywheredemo.Name NOT NULL, JContactInfo Adaptive Server Anywheredemo.ContactInfo NOT NULL, PRIMARY KEY (id))
限定Java 列
§表查询 (假定列Jprod 使用 Java 数据类型)
§select Jprod from product
选择整个 列 基于该类的String() 法返回结果集
限定Java Fields(字段)
§ 使用方法来选取列Jprod 中的一个字段
SELECT Jprod.getDescription( ) FROM product
§利用指定字段名来选取列Jprod 中的一个字段
SELECT Jprod.description FROM product
插入 Java 列
§利用缺省constructor 插入Java 对象
§ INSERT INTO product (ID, Jprod) VALUES (702, NEW Adaptive Server Anywheredemo.Product( ))
插入Java 列
§利用把所有的参数都传送给constructor来插入Java 对象
§ insert into product_item(id,JProd) •values (704, NEW Adaptive Server Anywheredemo.Product('Yellow','tee-shirt with picture of GG bridge', 'SF tee shirt',50,'Big',19.99))
更新Java 对象
§更新整个对象 使用constructor 使用SQL变量
§更新对象的某些字段
在UPDATE中 使用EVALUATE 函数
§EVALUATE 函数要求设定字段值的方法
删除Java 对象
§与删除一般数据行是一样的
§WHERE子句中可以包含Java 对象或Java字段和方法
访问Java 列
§如果打算使用 java 列作为: primary keys, indexes, unique 列, min() or max() SQL 函数, ORDER BY, GROUP BY, OR DISTINCT
§那么该java 类 必须实现一个compareTo()方法 在定义实现时要遵从:
必须调用compareTo()
不能被修改
SELECT name, Jprod.unit_price
FROM Product
ORDER BY Jprod.unit_price
SELECT name, Jprod.unit_price
FROM Product ORDER BY JProd
(The Product class has a compareTo() method that compares objects based on the unit_price field)
使用Computed(利用其他列计算出来的)列
§具有Java 类的 computed 列主要用于:
分解Java 列 把Java 列增加到表中
§在每次读取Computed 列时它不会被更新
仅当数据行被修改时它才会更新
使用 Computed 列
§建立包含computed 列的表
CREATE TABLE Product (
id INTEGER NOT NULL,
JProd Adaptive Server Anywheredemo.Product NOT NULL,
name CHAR(15) COMPUTE (Jprod.name),
PRIMARY KEY ("id"))
§表中增加computed 列
ALTER TABLE Product ADD inventory_Value INTEGER COMPUTE (Jprod.quantity * Jprod.unit_price)
小结
§Adaptive Server Anywhere 允许在数据库中把Java用做:
函数
存储过程
复杂的数据类型和 computed 列
§数据库必须设置为Java-enabled.
§Java虚机需要8MB内存.
§Java语法可被嵌入在SQL中.
§ 编写存储过程要求服务器-端 JDBC
经过两个晚上的时间,终于将这部分的资料浏览了并编辑了一遍,在和ase的比较过程中,可以发现这两种数据库产品差别还是很大的,无论是在使用对象及本身的语法结构上都有很大的差别!
希望诸位有实际使用asa产品经验的朋友能踊跃发表自己的见解!
kkccgg 回复于:2004-02-12 11:45:42
我怎么修改不了 adaptive server anywhere 数据库 的DBA 密码,请教高手帮帮忙?!非常谢~
上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] |