MySQL
PHP4からPHP5にバージョンアップしたらMySQLにつながらなくなりphpinfoからもmysqlのセクションが消えました・・・環境的にはどこも間違っている気がしていなくて、いろんなサイトを見た結果libmysql.dllをC:/WINDOWS/にコピーしたらphpinfoに出てきてMySQLにつ…
PHPに入ってるMySQLクライアントが古いのかと思ってPHP5の最新版から拾ってきたが駄目。結局の解決策は mysql> UPDATE user SET Password = OLD_PASSWORD('mypass') -> WHERE Host = 'some_host' AND User = 'some_user'; mysql> FLUSH PRIVILEGES; で解決!…
MySQLのバージョンというより、Connector/Jのバージョンに依存している気がします。機種依存文字をinsertしようとすると上記のエラーが発生。Connector/Jのバージョンを順番に調べていくと、3.1.8からエラーが出なくなりました。 mysql-connector-java-3.1.1…
ツールによりけり…。コマンドラインではOK、S2DaoでもOK。connector/Jの5.0betaを使うと文字化けするし、機種依存文字を使うとエラーで落ちるしかなり泣けました。文字化けに悩んだ場合は3.1.7(7以降は未テスト&.12は駄目だった)を使えば解消されます。MySQ…
内部的にはdoubleなのかな。1000.0とかになってた。どおりでlongへのパースに失敗するわけだ。SQLでキャストしてやろうと思ったけど、他のDBとSQLの互換性が無くなるからやめておいた。
request.setCharacterEncoding("Windows-31J"); <%@ page contentType="text/html; charset=Windows-31J" %> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> jdbc:mysql://localhost/dbName?useUnicode=true&characterEncoding=Windows-31J こんなエンコーディングに統一すればOK。JDBC URLのcharacterEnc</meta>…
これまたはぶさんとこからネタげっと。最近の私はMySQL漬けなのですが、いろんな管理ツールを試した結果、今の所Navicatが最強という結果になっています。1年間の無償アップグレード付きで22,575円なんですが、使い勝手の良さといったら他に類を見ないです…
Oracleでいうnvl関数は、MySQLだとifnull関数
時間無いのでJFaceDbcを使ってみる。あうち、データが文字化けする。原因は想像つくので対応してみる。JDBCのURLの所を jdbc:mysql://localhost/db_name?useUnicode=true&characterEncoding=utf8 としたらちゃんと表示できた。データの編集も無事にできた(^^…
java.lang.ArrayIndexOutOfBoundsException: 2 うーみゅみゅみゅみゅみゅ。Why?DbEditのソースおっかけてまで原因を調査してる時間は無いのだ…とりあえずぐぐる。
とりあえずJDBCドライバを疑ってみる。 JDBC Driver for MySQL with JDBC3.0(JDK1.4) & J2EE http://www.javareading.com/jdbc/ を導入してみた。今度は文字化けどころかINSERTすらされないorz。次次っ!
文字化けを乗り越え、できなかった事ができるようになったのがすごく嬉しい(笑)ちょっと一箇所力技を使いましたけど。DBのdefault-character-setを途中で変更した場合とにかく不都合が出ます。データを全部削除しただけじゃ駄目です。C:\mysql\data\db_name\…
MySQL 4.1以降のバージョンの機能です。サポートされているキャラクタセットの一覧を見るには mysql> SHOW CHARACTER SET; + Charset Description Default collation Maxlen + big5 big5_chinese_ci 2 latin1 latin1_swedish_ci 1 ujis ujis_japanese_ci 3 s…
とーーーっても簡単でした。DBのURLにパラメータとしてエンコーディングを追加するだけでした。 jdbc:mysql://localhost/db_name?useUnicode=true&characterEncoding=gb2312 ぐぐってもビシっと見つからなかったのはなんでだろう?キーワードそんなに悪かっ…
charactet setはgb2312(中国語)に設定し実験を行った。JDBCドライバはMySQL Connector/J 3.0.11。MySQLの設定(my.ini)はどれも同じ設定。 化けない mysql-3.23.58-win 化けない mysql-4.0.20a-win 化ける! mysql-4.1.2-alpha-win なんで4.1.2だけ化ける(T_T…
http://dev.mysql.com/doc/mysql/ja/InnoDB_foreign_key_constraints.html バージョン 3.23.50 より、ON DELETE CASCADE 節または ON DELETE SET NULL 節を外部キー制約に付けることもできるようになりました。対応する ON UPDATE オプションは、4.0.8 より…
my.iniの[mysqld]セクションの設定がえらいことになってました。 innodb_data_file_path=ibdata:2000M:autoextend ディスク容量パンクで起動しなかっただけのようです。MySQLのリファレンスからコピペしたからとんでもない数字になっていました。20MBに直し…
3.23.58の話。InnoDBがどうにも有効になってくれなくて mysql>SHOW TABLE STATUS; をやってもInnoDBがNOと表示されてしまうorz。ON DELETE CASCADE使いたいよー。設定が間違っているんだろうな…mysqld.exeは置き換えたし…明日へ持ち越しの課題。
AUTO_INCREMENTの列の最新の値を取得するには SELECT LAST_INSERT_ID() FROM TABLE_NAME; うーみゅ。最新版ではOracleみたいな使い方できるのかな。そういえばHSQLDBもこんな感じだったな〜。