MySQLで同じデータを2度書いてしまう
*僕のメモです。
内容・経緯
http://q.hatena.ne.jp/1429322382
環境:MySQL5.6.21,PHP5.6.2,Apache2.4,Windows8.0
MySQLのテーブルを作成したら、
必ず、UNIQUE KEYを設定する、
というのを習慣づける必要がある。
ただ、
`id` INT AUTO_INCREMENT,
には、つけられないので、
$stmt = $dbh->prepare("INSERT INTO users (name,email,password) VALUES (:name,:email,:password) ON DUPLICATE KEY UPDATE email = VALUES(email), password = VALUES(password)");
具体的な記述
*上記質問のURLに書いてる。
2度書きしてしまう僕のプログラム
<?php
// データベースへの接続 try { $dbh = new PDO('mysql:host=localhost;dbname=******','*****','******'); } catch (PDOException $e) { var_dump($e->getMessage()); exit; } $stmt = $dbh->prepare("insert into users (name,email,password) values (:name,:email,:password)"); $stmt->execute(array(":name"=>"n2",":email"=>"e2",":password"=>"p2")); echo "done"; // 切断 $dbh = null; ?>
*上記質問のURLに書いてる。
スポンサーリンク
関連記事
-
-
MySQLのUNIQUEKEY制約を設定について
これは僕のメモです。 この質問を参考に。 http://q.hatena.ne.jp
-
-
複数の引数を渡す方法
これは僕のメモです。 <?PHP //引数,複数の引数を渡
-
-
ODBCドライバがエラーが出て使えない。
Windows8.0ででて、Windows8.1では出ない現象かもしれま
-
-
PHPからprepareステートメントを使ってテーブルを作成する
これは僕のメモです。 「PHPからprepareステートメントを使ってテーブルを作成す
-
-
Windows10(x64)に、Apache2.4(x64)、MySQL5.7(x64)、MyCDBC(x86)、PHP 7.1.10、OfficeProffesional2007(x86)をインストールする
これは僕自身のメモです。 ノートパソコンに上記のものをインストールするのにてこづりました。 都合
-
-
MySQLのコマンドプロンプトでのバックアップとリストア
これは自分のメモです バックアップ 1.管理者 で コマンドプロンプト を実行(必ず。リストアも
-
-
テーブル内の更新クエリ(SQL,MySQL)
これは僕のメモです。 今まで基本ACCESSのクエリーをSQLで表示させてコピペで使ってま
-
-
phpMyAdmin インストール時にエラー
*これは自分のメモです。 phpMyAdmin インストール時にエラー エラー内
-
-
mysqldumpでデータベースを丸ごとバクアップする方法
*これは自分のメモです。 コマンドプロンプトとMySQLコマンドライン
-
-
MySQLをAccessから使う時idキーが必須
*僕のメモです。 Access(僕の場合2007、2007以降であれば同じではないか)
- PREV
- DOCTYPE宣言を必ずする習慣をつける
- NEXT
- 旅順要塞サイト作戦