SAK 図書館

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SQL 基礎編 (その九) PL/SQL declare、begin、DBMS_SQL、dbms_output

ユーザ関数にするほどでもないシステム開発時の SQL は、PL/SQL とすると便利
かもしれません。
Oracle 固有の部分があるかもしれません。SQL-Server、MDB では注意のこと。

■基本型

set serveroutput on;

declare
  cursor c1 is select * from sak.受注m
    where 品番 = 'a001' order by 受注番号;
  -- rec c1%rowtype;
begin
  dbms_output.put_line ('start...');
  for rec in c1 loop
    dbms_output.put_line (rec.受注番号 || ' ' || rec.品番);
  end loop;
  dbms_output.put_line ('end');
exception
  when OTHERS then
    dbms_output.put_line ('** エラー **');
end;
/

■動的 SQL

declare
  tbl in varchar2 default 'sak.test';
  cid integer;
begin
  cid := DBMS_SQL.OPEN_CURSOR;
  DBMS_SQL.PARSE(cid, 'create table ' || tbl || ' (データ number(9))', dbms_sql.v7);
  DBMS_SQL.CLOSE_CURSOR(cid);
  dbms_output.put_line ('end');
exception
  when OTHERS then
    dbms_output.put_line ('** エラー **');
end;
/

■SQL 基礎編資料
■SQL 基礎実地編資料
■SQL チューニング編資料
■Oracle PL/SQL 編資料
■PostgreSQL 編、JAVA Servlet、JSP 編資料
■MySQL 編資料
| VB | SQL | Perl | PHP | ASP | JSP | C | PC | HP | FAQ | フリーソフト |

SAK Streets メインストリート 図書館・カフェ 一覧 SAK Streets 検索



Copyright (C) 1999-2017 Y.SAK