2010年6月21日月曜日

SQL Anywhere 自動採番したIDを取得する

データベースSQL Anywhereにはテーブル列のデフォルト値にAUTOINCREMENTを指定することで行をinsertしたときに自動採番した値が入るようになる。

たとえば以下のようなテーブルを作っておいて、

CREATE TABLE mytbl (
rid INTEGER NOT NULL DEFAULT AUTOINCREMENT CONSTRAINT PRIMARY KEY,
val VARCHAR(20) NOT NULL
)


ridは指定しないで行を書き込む。

INSERT INTO mytbl (val) VALUES('aaaaa');
INSERT INTO mytbl (val) VALUES('bbbbb');
INSERT INTO mytbl (val) VALUES('ccccc');


この結果は以下の3行となる。

  • rid=1, val='aaaaa'

  • rid=2, val='bbbbb'

  • rid=3, val='ccccc'




さて、ここで採番された値を知る方法であるが、グローバル変数@@identityに最後に割り振られた値が格納されるので以下のSQLを実行することで値を取得できる。

SELECT @@identity;


例の場合は結果は3になる。

2010年6月18日金曜日

Bloggerにソースコードを載せる方法

Bloggerでコードをきれいに表示するガジェット(ウィジェット?)にSyntaxHighlighterというものがあると知り早速使ってみる。自分のBloggerへm-namikiさんの日記を参考に追加してみた。
FireFoxで作業したところ途中でダウンロード風のダイアログが出て迷ったが、「ブラウザで開く」を選ぶことで追加が完了。

コードが以下のようにいい感じに表示される。


public class MyClass {
public void hello() {
System.out.println("Hello World");
}
}


残念ながらプレビューの段階では普通のpreタグと同じような表示になるが投稿するとちゃんと表示される。

2010年6月17日木曜日