ODBC 関数
目次
- odbc_autocommit — 自動コミットの動作をオンまたはオフにする
- odbc_binmode — バイナリカラムデータを処理する
- odbc_close — ODBC 接続を閉じる
- odbc_close_all — 全ての ODBC 接続を閉じる
- odbc_columnprivileges — 指定したテーブルに関するカラムおよび付随する権限のリストを取得する
- odbc_columns — 指定したテーブルにあるカラム名のリストを取得する
- odbc_commit — ODBC トランザクションをコミットする
- odbc_connect — データソースに接続する
- odbc_connection_string_is_quoted — ODBC の接続文字列の値が、クオートされているかを調べる
- odbc_connection_string_quote — ODBC の接続文字列をクオートする
- odbc_connection_string_should_quote — ODBC の接続文字列を、クオートすべきかを調べる
- odbc_cursor — カーソル名を得る
- odbc_data_source — 利用可能なDSNについての情報を返す
- odbc_do — odbc_exec のエイリアス
- odbc_error — 直近のエラーコードを得る
- odbc_errormsg — 直近のエラーメッセージを得る
- odbc_exec — SQL文を直接実行する
- odbc_execute — プリペアドステートメントを実行する
- odbc_fetch_array — 連想配列として結果の行を取得する
- odbc_fetch_into — 一行ぶんの結果を配列に取り込む
- odbc_fetch_object — オブジェクトとして結果の行を取得する
- odbc_fetch_row — 行を取り込む
- odbc_field_len — フィールドの長さ (精度) を得る
- odbc_field_name — カラム名を得る
- odbc_field_num — カラム番号を返す
- odbc_field_precision — odbc_field_len のエイリアス
- odbc_field_scale — フィールドの精度を得る
- odbc_field_type — フィールドのデータ型を返す
- odbc_foreignkeys — 外部キーのリストを取得する
- odbc_free_result — 結果を保持するリソースを開放する
- odbc_gettypeinfo — データソースがサポートするデータ型についての情報を取得する
- odbc_longreadlen — LONG カラムを処理する
- odbc_next_result — 複数の結果が利用可能などうか確認する
- odbc_num_fields — 結果のカラム数を返す
- odbc_num_rows — 結果における行数を返す
- odbc_pconnect — 持続的なデータベース接続を開く
- odbc_prepare — 実行用に文を準備する
- odbc_primarykeys — テーブルの主キーを取得する
- odbc_procedurecolumns — プロシージャへのパラメータに関する情報を取得する
- odbc_procedures — 指定したデータソースに保存されているプロシージャのリストを取得する
- odbc_result — 結果データを得る
- odbc_result_all — HTML テーブルとして結果を出力する
- odbc_rollback — トランザクションをロールバックする
- odbc_setoption — ODBC の設定を変更する
- odbc_specialcolumns — 特殊カラムを取得する
- odbc_statistics — テーブルに関する統計情報を取得する
- odbc_tableprivileges — 各テーブルのリストおよび関連する権限のリストを取得する
- odbc_tables — 指定したデータソースに保存されたテーブルの名前のリストを取得する
+add a note
User Contributed Notes 9 notes
Quickdraw ¶
19 years ago
In response to Holger's comment about using @@identity:
Be carefull. If the table you're inserting into has a trigger that also inserts into another table that has an identity column you'll get the key of that other table! use scope_identity() instead of @@identity
sven at ajaxtechforums dot com ¶
18 years ago
I found this to be a perfect alternative to the MaxDB special drivers of version 7.5.00. Just weren't that easy to install on *nix. Windows seems fine. Anyway The ODBC is a perfect alternative for connecting the SAPDB/MaxDB towards PHP.
Installation guide for the odbc alternative (instead of the MAXDB-php driver) can be found here:
http://maxdb.yapabout.com/viewtopic.php?t=21
vbwebprofi at gmx dot de ¶
21 years ago
On my search for a function to retriew the NewID of an inserted row wich has an autoincrement I found this solution like the mysql_insert_id for an ODBC connection to MS-Access :
<?
// make your connection below
$Connection = odbc_connect(...);
$Result = odbc_exec($Connection, "select @@identity");
$NewID = odbc_result($Result, 1);
odbc_free_result($Result);
// make here all what you want with the NewID
odbc_close($Connection);
?>
In my mind this should also work with MS-SQL-Server and with Sybase - via ODBC and direct (mssql_.../sybase_...).
HTH ...
Regards
Holger
Anonymous ¶
19 years ago
I searched for the solution of why odbc connection of a network remote drive under Windows + Apache 2.0.X, cannot give the query, but seems no one provides the solution.
In fact, it is very simple.
Go to Control Panal -> Services;
Find and double click "Apache2";
In the page of "Log On", choose Log on as "This account" and give an account in the web server system which have the right to control the network remote drive;
Finally, restart Apache, and that's it.
denials at gmail dot com ¶
19 years ago
Ever wonder why you're experiencing really slow data retrieval times using IBM DB2 Universal Database for Linux, UNIX, and Windows? The default cursor type used by Unified ODBC is not supported by DB2, so it gets downgraded to a forward-only cursor -- and that negotiation occurs with every row fetch.
One way to force your PHP applications to use forward-only cursors is to modify your DB2 client configuration with a handy CLI patch2 setting value of 6:
$ db2 UPDATE CLI CONFIGURATION FOR SECTION dbname USING patch2 6
You have to update this client setting on the same machine on which you are running the PHP application. This works on Windows operating systems as well as on Linux & UNIX operating systems.
I ran a few basic benchmarks (fetch 10,000 rows consisting of 3 INTEGER columns from a remote database server) and concluded that this setting can make a major difference to your application speed:
Without CLI patch2 setting: ~22 seconds
With CLI patch2 setting: ~ 1.75 seconds
Note that the drawback of using this patch setting (or any other method of using forward-only cursors) makes odbc_num_rows() always return "-1" for the number of rows affected by a SELECT statement.