このシステムは複数の人が同時に使っています。
そして、下記実験で使うデータベースや表は一つしかありません。
そのため自分が行った確認の操作中に、他の人の操作でデータが変化し、予想と反する結果になる可能性があります。
それがどのようなタイミングで起きるか想像しながらお使いください。
以下で各種の操作を示します。
ここで使っている表(memberTbl2)は、ここで、あらかじめ作られていなければなりません。
なお、既に追加しようとしているキーのレコードが存在する場合は失敗します。
また、表の構造が異なると失敗する場合があります。
<html lang="ja"><head> <title>表のレコードの追加</title> </head><body> <?php $db_link = mysql_connect('127.0.0.1','usrgd','g7d5');// $db_linkに、データベース接続情報を得る。 $db_name = "manabu_goods";//データベース名 mysql_select_db($db_name, $db_link) or exit("データベースがありません"); $tbl_name = "memberTbl2";//テーブル名 echo "追加前の表の内容<br>"; require_once("print_select.php"); print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 $str_sql ="INSERT INTO {$tbl_name} (memberID,lastName,firstName,city,address,tel,mail,passwd)"; $str_sql .="VALUES ('s102030','斉藤','ゆう子','神奈川県','横浜市中区日本大通1','03-3312-2111','045-210-1111','123456');"; echo "{$str_sql}を実行します。<br>"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "実行結果:{$result} " . mysql_error() . "<br>"; $str_sql ="INSERT INTO {$tbl_name} VALUES ('s102031','山田','太郎','tokyo','新宿区西新宿2-8-1','03-5321-1111','tarou@mail2.com','abcxyz');"; echo "{$str_sql}を実行します。<br>"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "実行結果:{$result} " . mysql_error() . "<br>"; $str_sql ="INSERT INTO {$tbl_name} VALUES "; $str_sql .="('s102033','鈴木','太郎','宮城県','仙台市青葉区国分町3丁目7-1','022-261-1111','tarou2@mail.com','bcxyza'),"; $str_sql .="('s102034','佐藤','花子','千葉県','千葉市中央区市場町1-1','043-223-2110','hanako@mail2.com','bcxyza');"; echo "{$str_sql}を実行します。<br>"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "実行結果:{$result} " . mysql_error() . "<br>"; echo "<br>追加後の表の内容<br>"; print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 mysql_close($db_link);// データベースサーバの切断 ?> </body></html>上記プログラムの実行確認
<html lang="ja"><head> <meta http-equiv="Content-Type" content="text/html; charset=windows-31j"> <title>表のレコードの削除</title> </head><body> <?php $db_link = mysql_connect('127.0.0.1','usrgd','g7d5');// $db_linkに、データベース接続情報を得る。 $db_name = "manabu_goods";//データベース名 mysql_select_db($db_name, $db_link) or exit("データベースがありません"); echo "レコード削除前の表の内容"; $tbl_name = "memberTbl2";//テーブル名 require_once("print_select.php"); print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 $str_sql ="DELETE FROM {$tbl_name} WHERE lastName = '山田'"; echo "<br>{$str_sql}と実行します。<br>"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "実行結果:{$result} " . mysql_error() . "<br>"; echo "<br>レコード削除後の表の内容"; print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 mysql_close($db_link);// データベースサーバの切断 ?> </body></html>上記プログラムの実行確認
<html lang="ja"><head> <title>表の全てのレコードの削除</title> </head><body> <?php $db_link = mysql_connect('127.0.0.1','usrgd','g7d5');// $db_linkに、データベース接続情報を得る。 $db_name = "manabu_goods";//データベース名 mysql_select_db($db_name, $db_link) or exit("データベースがありません"); echo "レコード削除前の表の内容"; $tbl_name = "memberTbl2";//テーブル名 require_once("print_select.php"); print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 $str_sql ="DELETE FROM {$tbl_name}"; echo "<br>{$str_sql}を実行します。<br>"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "実行結果:{$result}" . mysql_error() . "<br>"; echo "<br>レコード削除後の表の内容"; print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 mysql_close($db_link);// データベースサーバの切断 ?> </body></html>上記プログラムの実行確認
<html lang="ja"><head> <title>表のコピー</title> </head><body> <?php $db_link = mysql_connect('127.0.0.1','usrgd','g7d5');// $db_linkに、データベース接続情報を得る。 $db_name = "manabu_goods";//データベース名 mysql_select_db($db_name, $db_link) or exit("データベースがありません"); require_once("print_select.php"); echo "コピー元の表の内容"; print_select("SELECT * FROM memberTbl");//全てを表示するSQLで表示 echo "コピーする前のコピー先表の内容"; $tbl_name = "memberTbl2";//テーブル名 print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 $str_sql ="INSERT INTO memberTbl2 SELECT * FROM memberTbl"; echo "<br>{$str_sql}を実行します。<br>"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "実行結果:{$result} " . mysql_error() . "<br>"; echo "<br>コピー後の表の内容"; print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 mysql_close($db_link);// データベースサーバの切断 ?> </body></html>上記プログラムの実行確認
<html lang="ja"><head> <title>表の初期設定</title> </head><body> <?php $db_link = mysql_connect('127.0.0.1','usrgd','g7d5');// $db_linkに、データベース接続情報を得る $db_name = "manabu_goods";//データベース名 $result = mysql_select_db($db_name, $db_link) or exit("データベースがありません"); $tbl_name = "memberTbl";//テーブル名 $str_sql ="DROP TABLE $tbl_name"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "表削除 実行結果:{$result} " . mysql_error() . "<br>"; $str_sql =<<<_END_TABLE CREATE TABLE {$tbl_name}( memberID char(8) not null, lastName char(10), firstName char(10), city char(10), address char(20), tel char(15), mail char(20), passwd char(10), primary key (memberID) ); _END_TABLE; $result=mysql_query($str_sql,$db_link);// テーブル作成のSQL文の実行 echo "表作成 実行結果:{$result} " . mysql_error() . "<br>"; $str_sql ="DELETE FROM {$tbl_name}"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "行削除 実行結果:{$result} " . mysql_error() . "<br>"; $str_sql ="INSERT INTO {$tbl_name} VALUES "; $str_sql .="('s102031','山田','太郎','tokyo','新宿区西新宿2-8-1','03-5321-1111','tarou@mail2.com','abcxyz')"; $str_sql .=","; $str_sql .="('s102933','斉藤','太郎','名古県','佐賀市城内1丁目1-59','0952-24-2111','tarou2@mail.com','abc123')"; $str_sql .=","; $str_sql .="('s102934','高橋','花子','岩手県','盛岡市内丸10番1号','019-651-3111','hanako@mail2.com','abc124')"; $str_sql .=","; $str_sql .="('s102035','山田','次郎','埼玉県','さいたま市浦和区高砂3-15-1','048-824-2111','jirou@mail2.com','bcxyza')"; $str_sql .=","; $str_sql .="('s102032','山田','良子','tokyo','杉並区阿佐谷南1丁目15番1号','03-3312-2111','yosiko@mail.com','cxyzab')"; $str_sql .=";"; $result = mysql_query($str_sql,$db_link);// SQL文の実行 echo "行追加 実行結果:{$result} " . mysql_error() . "<br>"; require_once("print_select.php"); print_select("SELECT * FROM {$tbl_name}");//全てを表示するSQLで表示 mysql_close($db_link);// データベースサーバの切断 ?> </body></html>