text.sql - SQLのパーズと構築 ¶このモジュールはSQL文のパーズと構築のためのユーティリティを提供します。
このモジュールは現在まだ開発途上にあります。まだトークン列を生成するルー チンしかありません。SQLのS式構文を定義して、SQLとその構文との間の変換 ルーチンを提供する計画です。
註: SQLに安全に渡せるように文字列をエスケープするルーチンをお探しなら、
DBIのユーザAPIのdbi-escape-sqlを見てください。
{text.sql}
SQL文sql-stringをトークン列に分解します。返り値はトークンのリス
トで、各トークンは以下の形式のひとつで表現されます。
<symbol> 特殊区切り子、以下のどれか
+ - * / < = > <> <= >= ||
<character> 特殊区切り子、以下のどれか
#\, #\. #\( #\) #\;
<string> 通常の識別子
(delimited <string>) 区切られた識別子
(parameter <num>) 位置パラメータ (?)
(parameter <string>) 名前つきパラメータ (:foo)
(string <string>) 文字列リテラル
(number <string>) 数値リテラル
(bitstring <string>) バイナリ文字列 <string> は "01101" な感じ
(hexstring <string>) Binary string. <string> は "3AD20" な感じ
トークンに分解できない文字列がくると<sql-parse-error>コンディショ
ンがあがります。