aes_decryptでsyntax error
はじめまして。
mysql 4.0.26でaes_decryptを使うとsyntax errorとなってしまいます。(mysql4.0.26+phpMyAdmin 2.6.4-pl2)
aes_decryptに関してはこのサイト及びGoogleで調べていろいろ試したのですが実行することができませんでした。
皆様のお知恵を拝借したく質問を作成させていただきました。
ご教授の程よろしくお願いいたします。
-- 実行したソース --
select col1, aes_decrypt(col2, 'key') as col2 from tbl;
-- エラーメッセージ --
#1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '( col2 , 'key' ) as col2 from tbl LIMIT 0, 30' at line 1
以下のソースを実行するとエラーが発生することなく終了しますが、
最後のdrop table文を削除すると上記のエラーが発生します。
--- 以下ソース ---
create table tbl( col1 integer, col2 tinyblob );
insert into tbl(col1, col2) values (1, aes_encrypt('test','key'));
select col1, aes_decrypt(col2, 'key') as col2 from tbl;
drop table tbl;
---
上記ソースを実行したときのphpmyadminのメッセージです
--
SQL 照会が正常に実行されました
実行した SQL 照会:
CREATE TABLE tbl(
col1 integer,
col2 tinyblob
);# MySQLが空の値を返しました。(例えば行が空とか).
INSERT INTO tbl( col1, col2 )
VALUES ( 1, aes_encrypt( 'test', 'key' ) ) ;# 影響された行数:1
SELECT col1, aes_decrypt(
col2, 'key'
) AS col2
FROM tbl;# 行: 1
DROP TABLE tbl;# MySQLが空の値を返しました。(例えば行が空とか).
--
お礼
回答ありがとうございます。 コードが足りなくてエラーが出たっぽいので とりあえず解決という事にします。 ありがとうございました。