RT
解决方案 »
- oracle如何重载操作符
- ubuntu系统中运行java程序调用oracle 的sqlplus,为什么找不到sqlplus呢?
- oracle8i p4安装问题
- 请教一个ORACLE的日期格式,要快呀,急用
- 求一sql语句
- oracle9倒入数据的问题
- ORACLE 用户与表空间的小问题,恳请大家帮个忙!!
- 请大家比较一下DB2与ORACLE之间的区别,如果应用程序从DB2移植到Oracle的可行性,非常感谢!!
- SQL SERVER与Oracle___,,
- 非常急的oracle问题,要多少分给多少!!!!!!!!!!!!!!!!!!!!!!!
- 局域网oracle服务端和客户端连接问题(The Network Adapter could not establish the connection)
- 寻SQL达人,求一SQL语句,内附图,百分奉上.
type 表类型 is table of 类型 index by binary_integer
index by binary_integer子句代表以符号整数为索引
例如:
Declare
type tabletype1 is table of varchar2(9) index by binary_integer;
table1 tabletype1;
begin
table1(1):='成都市';
table1(2):='北京市';
table1(3):='青岛市';
dbms_output.put_line('总记录数:'||to_char(table1.count));
dbms_output.put_line('第一条记录:'||table1.first);
dbms_output.put_line('最后条记录:'||table1.last);
dbms_output.put_line('第二条的前一条记录:'||table1.prior(2));
dbms_output.put_line('第二条的后一条记录:'||table1.next(2));
end;
--给你个插入数组一个值,并排序的例子
DECLARE
TYPE ABC IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
X ABC;
M INT;
N INT;
L_BOL BOOLEAN;
L_SUM INT := 12; --设定的数组长度
Z INT := 55; --要插入数组的数字
PROCEDURE PRINT(P_1 ABC) IS
BEGIN
FOR I IN 1 .. L_SUM LOOP
DBMS_OUTPUT.PUT_LINE(P_1(I));
END LOOP;
END;
BEGIN
FOR I IN 1 .. L_SUM LOOP
X(I) := TRUNC(DBMS_RANDOM.VALUE(1, 100));
END LOOP;
l_sum:=l_sum+1;
x(l_sum):=z;
PRINT(X); DBMS_OUTPUT.PUT_LINE('------------'); FOR I IN 1 .. L_SUM LOOP
N := 1;
L_BOL := FALSE;
WHILE (N + 1) <= L_SUM LOOP
M := X(N);
IF M > X(N + 1) THEN
X(N) := X(N + 1);
X(N + 1) := M;
L_BOL := TRUE;
END IF;
N := N + 1;
END LOOP;
EXIT WHEN NOT L_BOL;
END LOOP; PRINT(X);
END;
/