ホームページ  >  記事  >  バックエンド開発  >  PHP 用 MySQL 拡張機能: MySQL にアクセスするための PHP の共通拡張関数

PHP 用 MySQL 拡張機能: MySQL にアクセスするための PHP の共通拡張関数

WBOY
WBOYオリジナル
2016-06-23 13:47:33898ブラウズ

出典: http://www.ido321.com/1024.html

1. データベースへの PHP 接続と基本操作

MySQL は「クライアント/サーバー」アーキテクチャを採用しています。 PHP によってインストールされた MySQL 拡張機能を使用する場合も、クライアント ソフトウェア領域を使用して MySQL データベース サーバーに直接アクセスする場合も、原理は同じです。SQL コマンドを MySQL 管理システムに送信し、結果をユーザーに返す必要があります。

PHP では、SQL は 2 つのカテゴリに分類されます (SQL ステートメントの分類を参照)。1 つは、select/desc テーブル名などの結果セットを返す DQL ステートメントで、2 つ目は、実行後に結果セットを処理する必要があります。 DML、DDL などの結果セットはありません ただし、DML ステートメントが正常に実行された後は、データ テーブル内のレコードに影響します。

<?php//连接数据库,常用参数是主机名、用户名和密码$link = mysql_connect('localhost','root','123456');//判断是否连接成功if(!$link){die('连接失败'.mysql.error());  //连接成功返回资源标识符,失败返回false,mysql_error显示错误信息}//选择数据库,mysql_error()只在调试中使用,再部署项目时就不要了,不然会泄露数据库信息mysql_select_db('test') or die('选择数据库失败'.mysql_error());//mysql_query()可以设置字符集和执行SQL语句mysql_query('set names utf-8');$sql = 'insert into test(id,name) values("1","dwqs")';$result = mysql_query($sql);   //执行sql返回结果集//处理结果集,insert属于DML,会对表的记录有影响if($result && mysql_affected_rows() > 0){//mysql_insert_id()返回最后一条新纪录的auto_increment值echo '插入数据成功'.mysql_insert_id().'<br/>';}else{echo '插入数据失败,错误号:'.mysql_errno().'错误信息:'.mysql_error().'<br/>';}//关闭连接mysql_close($link);?>

2. PHP 処理の選択クエリ結果セット

PHP で select ステートメントを実行すると、各フィールドの処理に使用できる結果セットが返されます

$result  = mysql_query('select * from test');//获取记录行的个数$rows = mysql_num_rows($result);//获取字段个数,即数据列$cols = mysql_num_fields($result);

する必要がある結果にアクセスする 集中データを収集するには、次の 4 つの関数のいずれかを使用できます (すべて結果セットのリソース識別子をパラメーターとして受け取り、自動的に次のレコードを返し、テーブルの最後に false を返します)。 ): この関数は結果を取得します レコードが返され、通常のインデックス データとして保存されます

2. mysql_fetch_assoc(): 結果セットから行を取得し、関連付けられたデータとして保存します

3. mysql_fetch_array():結果セットの行を連想配列、数値配列、または 2 つの両方として取得します。 MYSQL_ASSOC (連想配列形式)、MYSQL_NUM (インデックス配列形式)、および MYSQL_BOTH を 2 番目のパラメータとして使用して、返されるデータ形式を指定できます。

4. mysql_fetch_object(): 結果セットから行をオブジェクトとして取得し、各フィールドはオブジェクト モードでアクセスされます。

推奨事項: 特別な要件がない限り、mysql_fetch_array() を使用しないでください。同じ関数を高効率で実現するには、mysql_fetch_row() または mysql_fetch_assoc() を使用できます。

また、結果セットに関連してよく使用される関数が 3 つあります

5. mysql_data_seek(int $num): 内部結果のポインターを移動します。$num は、設定する新しい結果セット ポインターの行数です。

6. mysql_fetch_lengths(resource $result): 結果セット内の各出力の長さを取得します

7. mysql_result(resource $result, int $row[,mixed $field]): ユニットの内容を返しますMySQL の結果セット。 field パラメーターには、フィールドのオフセットまたはフィールド名、あるいはフィールド テーブル ポイントのフィールド名 (tablename.fieldname) を指定できます。列にエイリアスが与えられている場合 ('select foo as bar from...')、列名の代わりにエイリアスが使用されます。

mysql_result()

の呼び出しを、結果セットを処理する他の関数と混合することはできません。


次の記事: WordPress を使用してカスタム登録フォーム プラグインを作成する方法


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