みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

md5で暗号化して別フィールドにinsertしたい

このようなMySQLのtable1があります。

id , name , comment   , ango
1 aoki こんにちは   null
2 inoue おはよう null
3 ueno こんばんは null
4 ono こんにちは null

idはprimaryでauto_incrementです。

commentデータをmd5で暗号化して、angoのフィールドに入力したいのですが、うまくいきません。

select comment, md5(comment) from table1

を実行したところ、全てのcommentデータが暗号化されたのですが、それをangoフィールドにinsertしようとするとエラーが発生します。

insert into table1 (ango) select comment, md5(comment) from table1

#1066 - Not unique table/alias: 'table1'

検索してみたら同じ状況の方がいました。私もMySQLは3.23.58を利用しているのでそれが原因のようです。

http://www.mysql.gr.jp/mysqlml/mysql/msg/10401

MySQLのバージョンを上げることなく、どのような手順でやれば可能でしょうか?

投稿日時 - 2007-12-11 14:32:02

QNo.3589388

困ってます

質問者が選んだベストアンサー

idフィールドがプライマリなのに同じキーをつかってINSERTはできないでしょう。
UPDATEですね?

UPDATE `table1` SET `ango`=MD5(`comment`) ;

投稿日時 - 2007-12-11 14:47:49

お礼

お恥ずかしい・・・
でも助かりました。
どうもありがとうございました。

投稿日時 - 2007-12-11 14:53:12

ANo.1

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問