検索
ホームページphp教程php手册Oracle の PHP クラスの操作

Oracle の PHP クラスの操作

Jun 13, 2016 pm 12:42 PM
oraclephp改訂操作するまだ親切警告する


//[警告]: 許可なく改変しないでください
//-------------------------- - ------------------------------------------------- - ---------------
//---------------------------- ---------------------------------------------------- ---- ---------
//
// [ファイル名]: c_ora_db.inc
// [関数]: Oracle 公開関数クラス
// [著者]:タイプ、 'n _' = numeric Type、 'l _' = boolean type、 'a _' = array type
// ----------------------------------------------------------- -------------------------------------------------- -- ------------------
//---------------------- -------- -------------------------------------- -------- ------------
// ※db_logon() 开启数据库连接
// ※db_query() 通用select
// ※db_change () データ库改变の汎用関数( Insert, delete, update)
// ※ db_insert () 挿入、db_change () を直接呼び出します
// ※ db_delete () 削除、db_change () を直接呼び出します
/ / ※ db_update() update、直接 db_change() を呼び出すdb_ // ※db_logoff() ※ データベース接続を切断します
//----- ----- ---------------------------------- ---------------- ------------------


クラス c_ora_db
{


//------ ------------------------------------ -------------- ------------------------------------ -
// 変数定義
//- ------------------------------------ -------------- ------------------------------------ ---
var $C_user = ""; $ c_dbパスワード
//ユーザー名
= "";//------------------------------------------------ ----------------------------------------



//------------------------------------------ --- ---------------------------------------------------
/ / 関数名: db_logon()
// 関数: データベース接続を開く
// パラメーター: なし
// 戻り値: 接続ハンドル (整数)
// 注: なし
//------------------------------------------ -----------------------------------------------
function db_logon() & gt; i_linkid == 0) {alertexit ('データベースリンクに失敗しました。DBA に連絡してください!');}
Return $ this- & gt;リンクID;
}
// -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- --------------------- ---------------------------- --------------------- ---------------------------- -----

------------------------------------------ ----------- ----------------------------------
//関数名: db_query($C_sql,$A_define ="",$I_start=-1,$I_end=-1)
// 関数: select
// パラメータ: $C_sql ステートメント
// $ A_define バインドされるフィールド。配列型 “ >// 戻り値: 2 次元配列 ($A_rs)
// 備考: 対応するフィールドの値は、数値 0,1,2.... または の値を通じてアクセスできます。対応するフィールドは、フィールド名
// をクエリすることによってもアクセスできます。たとえば、$A_rs[0][0] または $ A_RS [0] ['name'] または $ A_RS [0] ['name' ] はすべて最初のレコード名フィールドにアクセスできます
// $ i_start、$ i_end はページと組み合わせて使用​​されるパラメーターです。
//------------------------------------------ --------------------------------------
関数 db_​​query ($C_sql,$A_define="",$I_start=-1,$I_end=-1)
{
if (!$C_sql){AlertExit("パラメータが不完全です!");}//パラメータを確認します

//接続検出
if ($this->I_linkID == 0){AlertExit('データベース リンクに失敗しました。DBA に連絡してください!');}

// 形式検出
$this -> I_stmtID = OCIParse($this -> I_linkID,$C_sql);
if (!$this -> I_stmtID){AlertExit(' SQL 形式エラー!プログラマに連絡してください');}

//バインドされたフィールドが指定されていない場合は、SQL ステートメントから取得します
if($A_define=="")
{
$ A_Cur =explode("select",$C_sql);
$A_Cur = ("from",$A_Cur[1]) ); )

id、 "$ a_define_up [$ i]"、&$$ a_define [$ i]); 🎜> // バインドされた SQL ステートメントを実行します
if(!OCIExecute($this -> I_stmtID))
{
echo "実行エラー:SQL エラー:$C_sql
";

$ lower = 0; //レコードを取得 WHILE (OCIFETCHINTO ($ this -& gt; I_Stmtid, & $ cur, OCI_ASSOC))
{
// すべてのレコード
if ($ i_start == -1)
{
if (gettype($A_define) == "array") //クエリ列は配列 ine);$i ) [$ i]; $ a_rs [$ a_define [$ i] = $ a_define [$ i]; $A_define)

$ a_rs [$ lower] [0] = $ a_define] [$ a_define_up] = $$ a_define; 🎜> //指定されたレコードを取得します (ページネーションで使用されます) if ($ i_start & lt; & gt; -1)
{
if ($ cNT & GT; = $ i_start)
{
$ cNT;
if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if> if>
if> if ($I_end - $I_start 0)
> i=0;$i > $$A_define[$i])
{

$ a_rs [$ lower] [$ a_define [$ a_define]<> Break; // $I_end-$I_start=0 の場合、レコードがフェッチされ、while ループから抜け出すことを意味します。else
🎜>ハンドルを解放し、クエリ データ (2 次元配列) を返します。
OCIFreestatement($this -> I_stmtID);
return $A_rs; /機能終了
//- -------------------------------------- ---------- --------------------------------------


// -------------------------------------- ---------- --------------------------------------------
// 関数名: db_change( $C_sql,$A_bind)
// 関数: db change
// パラメーター: $C_sql SQL ステートメント
// $A_bind バインドされるフィールド。配列型
// 戻り値: ブール値
// 注: 挿入、削除、更新は共通です
//------ - ------------------------------------------------- - --------------------
function db_change($C_sql,$A_bind="")
{
if (!$C_sql){ AlertExit (「不完全なパラメーター!」);}プログラマー ');}

i< count($ a_bind); $ i)
/ / backslash文字を削除してください
$$ a_bind [$ i] = str_replace( "<? "," }
for ($i=0 ; [$i], -1); 🎜> 文字
{ グローバル $$A_bind;
$$A_bind = StripSlashes($$A_bind);
$$A_bind = str_replace(""," OCIBindByName($this -> I_stmtID, ":$arrBind", &$$A_bind, -1); Success
if(!OCIExecute( $this -> I_stmtID,OCI_DEFAULT))
{
echo "実行エラー:SQL エラー:$C_sql
"; ; global $I_changenum; $I_changenum = OCINumrows($this -> I_stmtID);*/

//リリースハンドルを取得し、値を返します。
OCIFreeStatement($this -> I_stmtID);
return true;
//------------------------------------------ ---------------------------------------


//------------------------------------------ --- ---------------------------------------------------
/ /関数名: DB_DELETE ($ C_SQL)
// ファクトリ: delete
// パラセプション: C_SQL SQL ステートメント
// 戻り値: ブール値
// 注: この関数直感的に使用できるようにするには、基本的に db_change()
//-------------------------- を呼び出します。 ------------------------ ---------------------------- ---------------------- ----
関数 db_​​delete($C_sql)
{
return $this -> $C_sql);
}
//--------------------- ---------------------------- ------------------------ ---------------------------- ---


//-------- ---------------------------- ------------------------ ---------------------------- ----
// 関数名:db_insert($C_sql,A_bind)
// 関数:insert
// パラメータ:C_sql 文
// A_bind Bind
// 戻り値: ブール値
// 備考: この関数は基本的に db_change()
//---------------------- を呼び出して直感的に使用します。 ------------------ -------------------------------- ------------------
関数 db_​​insert($C_sql,$A_bind="")
{
return $this -> db_change($C_sql; ,$A_bind);
}
//---- -------------------------------- ------------------ -------------------------------- ----


//--- -------------------------------- ------------------ -------------------------------- -----
// 関数名: db_update($C_sql, A_bind)
// 関数: update
// パラメータ: C_sql ステートメント
// A_bind Binding
// Return value: ブール値
// 備考: この関数は直感的に使用するためだけに、基本的に db_change()
//---------------------- を呼び出します。 ------------ -------------------------------------- ------------ -----
function db_update($C_sql,$A_bind="")
{
return $this -> $A_bind);
}
/ /------------------------------------- ------------ -------------------------------------- ----



//-------------------------------- ------------------------ -------------------------------------------- --------
// 関数名: db_commit()
// 関数: トランザクション送信
// パラメータ: なし
// 戻り値: ブール値
/ / 備考: なし
//- -------------------------------------- ---------- -------------------------------------- -----
関数 db_​​commit()
{
return (OCICommit($this->I_linkID));
//------------------------------------------ ---------------------------------------


//------------------------------------------ --- ---------------------------------------------------
/ / 関数名: db_rollback()
// /--------------------------------- ---------------- ---------------------------------- -------------
function db_rollback()
{
return (OCIRollback($this->I_linkID));
}
//- ------------------------ ------------------------ ----------------------- ------------------


//-------------------------- ------------------------ -------------------------- ------------------
// 関数名前: db_logoff()
// 機能: データベース接続の切断
// パラメータ: なし
// 戻り値: ブール値
// 備考: なし
//---- ------------------------ ---------------------------- ---------------------- -------------- -------------- ------------------------------------ -------------- ------------------------

/----------------- -------------------------------- ------------------ ------------------------
}
?> ;

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール