検索
カレンダー
2006年12月
« 11月   1月 »
 12
3456789
10111213141516
17181920212223
24252627282930
31  
ブログメニュー
Amazon検索
キーワード:

複数のテーブルを組み合わせたDELETE/UPDATE

2006年12月20日

他のテーブルと関連した検索条件で抽出した複数のレコードを、
DELETEしたりUPDATEしたりするには下記のようにサブクエリ(副問い合わせ)を使います。

(例)
DELETE FROM table1 WHERE column1 IN (SELECT column1 FROM table2 WHERE ...);

複数のカラムでプライマリーキーになっているテーブルがあると、複数のカラムで比較する必要がでてくると思います。
複数のカラムで比較したい場合は、下記のように複数のカラム名をカッコで囲んで書きます。

(例)
DELETE FROM table1 WHERE (column1, column2) IN (SELECT column1, column2 FROM table2 WHERE ...);

Eclipseが不安定な方へ

2006年12月20日

先日、Eclipseのバージョンを最新にし、便利そうなプラグインを片っ端から入れてみました。
その結果、Eclipseが1日に10回以上もクラッシュして落ちるようになってしまいました汗

エラーログを漁ると、ヒープメモリ不足なような気が…。
そこで eclipse.ini を色々いじって -Xms や -Xmx を大きくしてみたりしたのですが、現象が改善せず途方にくれてしまいました。
さらにエラーログを調査すると、どうやらパーマネント領域が足りないようです。
eclipse.ini に下記のような行を追加してパーマネント領域を増やしました。
-XX:PermSize=32m
-XX:MaxPermSize=256m
この効果は絶大で、このパラメータを追加してからはクラッシュしなくなりましたニコニコ

それにしても、パーマネント領域を指定するパラメータがあるとは思いませんでした…。
原典を発見できなかったのですが、どこで定義されているのでしょうか?
sunのjavaコマンドのページ にも書かれていないようです。
もしかして安定したのは気のせいなのでしょうか???
どなたかお教えいただければうれしいです。

ちなみに、参考にしたページは「@IT 事例に学ぶWebシステム開発のワンポイント(9) 」です。


 (2008/12/19追記)
上記のパラメータは
-vmargs
の後に書くようにしてください。

-vmargs
-Xms128m
-Xmx1024m
-XX:MaxPermSize=256m

のような感じです。数字が大きすぎたり改行を入れない場合はエラーになりますので気をつけて下さい。
Eclipse3.4では、eclipse.iniに次のように定義することもできます。

--launcher.XXMaxPermSize
256M