MacとJavaと映画と


最近のエントリー


最近のレスポンス
Re: それでも僕はやっていない
確かに、ラストの落としどころは良いですね...

Re: それでも僕はやっていない
ボクもこないだ観たよ~。 いや~、怖いね、満員電車。 ラストシーンが好きだったね~。小日向文世...

Re: 帯状疱疹
おぉ、聞いたことないけれども何かとかかっ...

Re: 帯状疱疹
家のカミサンもなったことがあります。 早くよくなるといいですね。

Re: 帯状疱疹
うーん、仲間がいると思うと気が休まります...

Re: 帯状疱疹
聞いたことなかったですけど、結構かかる人...

Re: 帯状疱疹
私もかかったことあるんでわかりますが,結...

Re: 帯状疱疹
ご愁傷様です。早くよくなられることを願っ...

Re: 麗しのサブリナ
やっぱりヘップバーンはいいですねー

Re: 麗しのサブリナ
ひさしぶりに侍ズムを開いたら、私の入り込...
6月 2007
      1  2 
 3  4  5  6  7  8  9 
 10  11  12  13  14  15  16 
 17  18  19  20  21  22  23 
 24  25  26  27  28  29  30 
5  |  今日  |  7





はてなブックマーク数

あわせて読みたい


follow yusukey at http://twitter.com


MySQL をインストールしたらあとは自家用掲示板アプリの移植です。
Hibernate とかいったカッコイイものは使っていないので非互換の SQL を手動で直していく必要がありました。

といっても直す必要があったのは2点だけ。

・サブクエリのマナー
insert 句の中で select をネストしていた部分が MySQL ではエラーになってしまいました。

mysql> insert into table1 (colmn1,colmun2) values('value1',(select count(*) from table1));
ERROR 1093 (HY000): You can't specify target table 'table1' for update in FROM clause

そんな複雑なクエリじゃないです。Oracle でもこれは通りますね。

MySQL では values のかわりに select 句をそのままもってくると良いようです。
mysql> insert into table1 (colmn1,colmun2) select 'value1', count(*) from table1;
Query OK, 1 row affected (0.11 sec)
Records: 1 Duplicates: 0 Warnings: 0
このクエリは PostgreSQL でも通りました。

・シーケンスは?
プライマリキーの生成にシーケンスを使っていましたが、MySQL にはシーケンスがないようです。
かわりにテーブル定義時に "AUTO_INCREMENT" と指定しておくと値を指定しなくても自動的にインクリメントしてくれる仕組みです。
SQL も一発で済むので楽ですね。
どんな値が入るか事前に知る必要がある場合はシーケンス発生用のテーブルを定義する必要がありそう。

タグ : ,



コメント追加

タイトル
本文
HTML : b, i, blockquote, br, p, pre, a href="", ul, ol, li
名前
E-mail
Webサイト
保存しますか? はい  いいえ 

E-mailは公開されません, このエントリーの新規コメント通知が必要なら記入します。(解除可能)

トラックバックURL http://yusuke.homeip.net/diary/.action?entry=1181660717569