home > PHPでのMySQL操作

PHPでのMySQL操作

主な関数

mysql_connect()関数
MySQLへ接続する
mysql_close()関数
MySQLから切断する
mysql_select_db()関数
データベースを選択する
mysql_query()関数
SQLステートメントを実行する
mysql_result()関数
取得した値を取り出す
mysql_num_rows()関数
取得したレコード件数を数える
mysql_fetch_row()関数
取得したレコードを配列で取得する
mysql_fetch_array()関数
取得したレコードを配列で取得する
mysql_free_result()関数
メモリを開放する

用法および解説

MySQLへ接続する

mysql_connect("コンピュータ名","ユーザー名","パスワード")

PHPからMySQLを操作する際は、初めにMySQLに接続する。
mysql_connect()関数を使ってサーバーへの接続を開く。
返り値は接続ID(INT型の整数値で返される)になる。
失敗した場合は、falseが返される。

→サンプルスクリプト

MySQLから切断する

mysql_close("接続ID)

mysql_close()関数は、引数で指定された接続IDとの接続を閉じ、成功するとtrueを、失敗するとfalseを返す。
接続IDはmysql_connect()関数の返り値となる。
通常の接続では、PHPスクリプトの実行終了後に自動的に接続が閉じられる。

→サンプルスクリプト

データベースを選択する

mysql_select_db("データベース名",接続ID)

サーバーへ接続したら、次に利用したいデータベースを選択する。
mysql_select_db()関数を使ってデータベースを選択する。引数としてデータベース名のほかにmysql_connect()関数の返り値である接続IDが必要となる。
データベースを選択できた場合には、指定したデータベースがアクティブなデータベースとなりtrueが返され、データベース名の間違いや存在しない場合などの失敗時にfalseが返される。

→サンプルスクリプト

SQLステートメントを実行する

mysql_query(SQL構文,接続ID)

データベースに対して何らかの操作を指示する場合には、SQLで記述したステートメントを発行しなければならない。mysql_query()関数を使って、指定したSQLを実行する。
レコードを取得するselectステートメントを実行すると、結果IDが返される。取得したレコードにアクセスする場合はこの結果IDを指定する。
update、insert、deleteステートメントを実行すると、結果IDではなくtrueまたはfalseが返される。

→サンプルスクリプト

取得した値を取り出す

mysql_result(結果ID,収得するレコードの行番号(テーブルの行),何番目のカラムか(0からカウントする))

mysql_result()関数を使ってmysql_query()関数で返された結果ID、行数、カラムを引数にして取得した結果セットから値を取り出すことができる。

取得したレコード件数を数える

mysql_num_rows(結果ID)

取得したレコード件数を数えるにはmysql_num_rows()関数を使う。
mysql_query()関数で返された結果IDを引数にして、取得した結果セットのレコード件数を返す。

取得したレコードを配列で取得する

mysql_fetch_row(結果ID)
mysql_fetch_array(結果ID,結果の型)

結果IDを引数にして、レコードを1行ずつ配列で返す。配列の添字は0から始まる。
mysql_fetch_row()関数を続けて呼び出した場合は、次の行を読みに行く。
mysql_fetch_array()関数は、mysql_fetch_row()関数の機能を拡張した関数で、結果の型に、連想配列(mysql_assoc)通常の配列(mysql_num)、,span>連想配列と通常の配列(mysql_both)を指定できる。

メモリを開放する

mysql_free_result(接続ID)

取得した結果を保持しているメモリをmysql_free_result()関数で開放する。
通常はスクリプトの実行を終了すると自動的に開放される

→サンプルスクリプト

▲このページのトップへ