2010年6月21日月曜日

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

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

たとえば以下のようなテーブルを作っておいて、
  1. CREATE TABLE mytbl (  
  2.    rid INTEGER NOT NULL DEFAULT AUTOINCREMENT CONSTRAINT PRIMARY KEY,  
  3.    val VARCHAR(20) NOT NULL  
  4. )  


ridは指定しないで行を書き込む。
  1. INSERT INTO mytbl (val) VALUES('aaaaa');  
  2. INSERT INTO mytbl (val) VALUES('bbbbb');  
  3. INSERT INTO mytbl (val) VALUES('ccccc');  


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

  • rid=1, val='aaaaa'

  • rid=2, val='bbbbb'

  • rid=3, val='ccccc'




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


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

2010年6月18日金曜日

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

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

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

  1. public class MyClass {  
  2.     public void hello() {  
  3.         System.out.println("Hello World");  
  4.     }  
  5. }  


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

2010年6月17日木曜日