mysql_query() 関数をチュートリアルの基本前提として、まず mysql_query() の使用法を見てみましょう:
mysql_query() 関数
PHP MySQL 関数ライブラリでは、mysql_query() 関数は送信に使用されます。 MySQL に対して SQL ステートメントを実行します。
UPDATE、DELETE など、データを含む結果セットを返さない SQL の場合は、正常に実行された場合は TRUE を返し、エラーが発生した場合は FALSE を返します。SELECT、SHOW、EXPLAIN、または DESCRIBE ステートメントの場合は、リソース識別子が返されます。クエリが正しく実行されなかった場合は FALSE が返されます。
構文:
resource mysql_query( string query [, resource connection] )
パラメータの説明:
ヒント
開いている接続がない場合、この関数はパラメータなしで mysql_connect() 関数を呼び出して接続を確立しようとします
データセットを返すクエリの場合、戻り結果が 0 の場合 (つまり、クエリ条件を満たすレコードがない場合)、FALSE の代わりにリソース識別子が返されます
例 1:
<php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); $result = mysql_query("SELECT * WHERE 1=1") or die("无效查询: " . mysql_error()); ?> 该例子查询语句在 SQL 语法上有错误,因此 mysql_query() 执行失败并返回 FALSE 。 例子2: <php $conn = @mysql_connect("localhost","root","root123"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } mysql_select_db("test", $conn); mysql_query("set names 'gbk'"); //为避免中文乱码做入库编码转换 $password = md5("123456"); //原始密码 12345 经过加密后得到加密后密码 $regdate = time(); //得到时间戳 $sql = "INSERT INTO user(username, password, email, regdate)VALUES('小王', '$password', '12345@163.com', $regdate)"; if(!mysql_query($sql,$conn)){ echo "添加数据失败:".mysql_error(); } else { echo "添加数据成功!"; } ?>
この例では、ユーザー テーブルにデータを書き込み、正常に TRUE を返します。それ以外の場合は FALSE を返します (! 記号を使用して判断します)。
データベースの作成 データベースを作成します
データベースを作成します
CREATE DATABASE 構文を使用してデータベースを作成します。
構文:
CREATE DATABASE db_name
PHP MySQL 関数ライブラリでは、mysql_query() 関数を使用して SQL ステートメントを MySQL に送信して実行します。
testdb という名前のデータベースを作成します:
<?php $conn = @mysql_connect("localhost","root","root1234"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } if (@mysql_query("CREATE DATABASE testdb",$conn)){ echo "创建数据库成功!"; } else { echo "创建数据库失败:" . mysql_error(); } ?>
ヒント
データベースを作成するには、root ユーザーなど、対応するユーザー権限が必要です
実際の仮想ホスト空間では、通常、仮想ホストプロバイダーが対応するデータベースを作成しているため、上記の例とは異なる場合があります正常に実行されました
データベースを選択してください
データベースまたはテーブルに対して操作を実行する場合は、データベースを選択する必要があります。 mysql_select_db() はデータベースを選択するために使用されます。この関数は成功した場合は true を返し、失敗した場合は false を返します。
構文:
bool mysql_select_db( string db_name [, resource connection] )
パラメータの説明:
具体的な使用方法については、以下のデータテーブルの作成例を参照してください。
データ テーブルを作成する
データ テーブルを作成する SQL 構文は次のとおりです:
CREATE TABLE table_name ( column1 data_type, column2 data_type, column3 data_type, ....... )
上記の構文では、column はフィールド名で、その後にデータ型が続きます。
user という名前のテーブルを作成します:
<?php $conn = @mysql_connect("localhost","root","root1234"); if (!$conn){ die("连接数据库失败:" . mysql_error()); } //选择数据库 mysql_select_db("test", $conn); //创建数据表 SQL $sql = "CREATE TABLE user ( uid mediumint(8), username varchar(20), password char(32), email varchar(40), regdate int(10) )"; if(!mysql_query($sql,$conn)){ echo "创建数据表失败:". mysql_error(); } else { echo "创建数据表成功!"; } ?>
この例では、3 つの実行ステップに分かれています:
データベースリンクを作成する
mysql_select_db() 関数を使用して、テーブルを保持するデータベースを選択します
mysql_query() 関数を使用してデータテーブルを作成します
この例では、作成されたテーブルには 4 つのフィールドがあり、対応するデータ オブジェクト タイプが指定されています。
テーブル構築の原則
一般的に、データテーブルを作成する際には次の注意事項があります:
元のレコードデータとテーブルの対応関係
テーブル名とフィールド名は命名構文に従い、明確な意味を持つ必要があります。意味
フィールドのデータ型を指定します
空でないかどうか、デフォルト値があるかどうかなど、フィールドのその他の属性を指定します
主キーと外部キー、制約、インデックスなどのテーブル属性を定義します
他のテーブルとの関係
スペースの制限とチュートリアルの難易度を制御するため、ここではあまり説明しません。
ヒント
このテーブル作成例は、基本的なテーブル作成構文を示すだけであり、完全ではありません。実際の運用では、テーブルとフィールドに対してさらに多くの属性を指定する必要があります。
PHP の mysql_query() 関数を使用して MySQL データベースを作成することに関するその他のチュートリアルと関連記事については、PHP 中国語 Web サイトに注目してください。