2006-01-01から1ヶ月間の記事一覧

制限、Integer.MAX_VALUE(=2^31 - 1)の壁

やっぱりJavaではInteger.MAX_VALUEを超える要素数を持った配列ってつくれないよね.(byte[Integer.MAX_VALUE]という変数だけでヒープサイズを2GB消費するのは置いておくと)JavaSEのJavaDocのいろんなクラスを見渡しても,capacityやlengthを指定するよう…

long型の恐怖

いま気づいたんだけど,パラメータに使用するReaderとかInputStreamの長さを指定する引数にlong型が使用されているのってJDBC 4.0ではいっぱいある(追加されたメソッド).JDBC 3.0まではPreparedStatement.setBlobってのは(int, Blob)しかなかった.でもJD…

今度は自分でUDFを作ってみました

なんか眠れないので作ってみました.一度慣れちゃうとあっという間ですね. 指定した時間(ミリ秒)だけsleepする関数です.UDFの関数名は"the_world".某有名スタンドからwSuSE Linux 10 + MySQL 5.0.18です.ソースコード丸ごとはこちら http://ikda.net/…

Wikiページ追加 MySQLで遊ぶ

まだUDFについてのみ,しかもUDFサンプルのコンパイルとインストールしかネタがないですがページ作ってみました. http://ikda.net/fswiki/wiki.cgi?page=MySQL+hackまあ今後はこういうネタも書きたいなということで.

UDF (User Defined Function) defined by SQL1999

UDFはSQL1999により定義されたSQL99の標準機能なわけでして,これをMySQLに作って使ってみようとしていたら・・・. mysql> CREATE FUNCTION myfunc_int RETURNS INTEGER SONAME "udf_example.so"; ERROR 1126 (HY000): Can't open shared library 'udf_example…

UDFの"DROP FUNCTION ..."について

UDFをインストールしていない状態で"DROP FUNCTIONを実行してみる.MySQL 5.0.18の場合 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 to server version: 5.0.18-max Type 'help;' or '\h' for help. Type '\c'…

PreparedStatement.setNCharacterStream()の引数の件(その2)

JDBC 4.0のExpertGroup Memberの一人であるMark Matthews氏にこの件について聞きました. void setNCharacterStream(int, Reader, long)これは第3引数はlongでなければならないということです.何故か?LOBは2^32バイト以上のサイズを取り得るから.(2^32=4G…

JDBC 4.0仕様書の日本語訳 追加

「第15章 高度なデータ型」の中の第3節「BlobおよびClobオブジェクト」の部分の日本語訳を作成・追加しました.http://ikda.net/fswiki/wiki.cgi?page=JDBC+4%2E0+%BB%C5%CD%CD%BD%F1#p13NClobに関する記述を日本語で見るために訳したのですが,まあ予想通り…

PreparedStatement.setNCharacterStream()の引数の件

JDBC 4.0 Public ReviewのJavaDocによればこのメソッドの引数は void setNCharacterStream(int, Reader, long) なんですがこれは以下であるべきではないでしょうか void setNCharacterStream(int, Reader, int) 何故なら類似メソッドのPreparedStatement.set…

新インタフェースNClobについて

public interface NClob extends ClobClobに対する追加メソッド定義などは無し.継承宣言のみ.以下JDBC 4.0 JavaDocより適当和訳↓NClobはSQLのNCLOB型をJavaプログラミング言語にマッピングする際に使用するインタフェースです.SQLのNCLOBはキャラクタラー…

sql_mode=NO_BACKSLASH_ESCAPES対応の件

NATIONAL CHARACTER対応実装をConnector/J 5.1へ行うために,まずその橋頭堡となる"com.mysql.jdbc.PreparedStatement"クラスのsetStringメソッドを調べていたわけですが, http://ikda.net/fswiki/wiki.cgi?page=Connector%2FJ+5%2E0#p5昨日の日記で書いた…

Connector/J 5.1 ページをWikiに追加

http://ikda.net/fswiki/wiki.cgi?page=Connector%2FJ+5%2E1 追加しました.とりあえずsetNStringの実装についての話を書いてあります.

Executive Committee for J2SE/J2EE

Javaの仕様を決めているのはJCPという組織.JDBC 4.0仕様への投票が1/23に行われました. http://www.jcp.org/en/jsr/results?id=3544まだ投票してないところもあるようですが.この16の企業の決議によって決められているようです(1社でも拒否したら駄目な…

オープンソース・ベースのCRM新版「SugarCRM 4.0 日本語版」リリース,施設管理モジュールも公開

http://itpro.nikkeibp.co.jp/article/NEWS/20060124/227789/ 価格は,Sugar Professionalが1ユーザー年間ライセンス3万円。Sugar Enterpriseが1ユーザー年間ライセンス6万円。 これって高いの?安いの?CRMの商用製品の値段よくしらないんだけど。

sql_mode=NO_BACKSLASH_ESCAPESについて

MySQL 5.0.16以前では,LIKE句を使用する際に「LIKE "*%hoge" ESCAPE "*"」といったようにLIKE句中で使用する特殊文字をエスケープするためのESCAPE句に対する制限がなく,何文字であっても受け入れていました.しかしSQL2003ではこのESCAPE句に設定できるの…

NATIONAL CHARACTER対応について

#日記の日付表示基準を変えたので4日間も経ってしまったかのような感じですが現地時間的には日曜日をはさんで2日ぶりの更新です.今はこちらは月曜日ですが今日は早朝から活動してます.さて,前回の件をMark Matthews氏に話しました.とりあえずクライアン…

SQL2003ハンドブック―SQL最新標準規格(続報)

もう届いた.早い.Amazon日本から送ってもらったのに.それよりも前にAmazon米国に注文したハリーポッターの最新作がまだ届いてないのはどーいうことだ.まあこっちは通常便のお金しか払ってないけど.

National Characterはいつ導入されたか

National CharacterがSQL2003で追加されたという認識は間違いで,どうもこれはSQL1999で既に追加されているっぽいです.であるならば既にRDBMS側が実装完了しているのもうなずけます.となるとJDBC 4.0において「SQL2003対応します.だからNational Characte…

National Characterが導入されたわけについて考える

National CharacterはSQL1992で既に導入されていた.であるならばSQL2003対応を謳うJDBC 4.0よりももっと前のバージョンで対応していなければならなかったはずだが,まあ諸事情により実際には導入されていなかった.JDBC 3.0まではキャラクタセットに関する…

Prepared Statement関連のプロトコルについて

検索結果を返す際に使用する"Fieldパケット"の構造は以下(MySQL 4.1以上). VERSION 4.1 Bytes Name ----- ---- n (Length Coded String) catalog n (Length Coded String) db n (Length Coded String) table n (Length Coded String) org_table n (Length…

カラム別に文字コードを設定

使い古されたようなネタですが読み物風の説明書きを書いてしまったので,もったいないので日記にも転載. こっちが元ネタ(http://ikda.net/fswiki/wiki.cgi?page=MySQL#p13) MySQLではカラム別に文字コードを使用することができます.Windows上にインスト…

5.1.5リリース

数日前ですがMySQL 5.1.5がリリースされたようです.ということはmysqlslapもコンパイルしないで使える?と喜び勇んだものの,binディレクトリ見たら入ってませんでした.なんでー!?

仕様書

ぐぐったら手に入ったのでうちのサーバにもアップロードしておきました.ダウンロードはこちらから. http://ikda.net/resource/sql2003/sql_2003_standard.zip(右クリックで保存)サイズは10MBくらいです.zipで固まっているので解凍して下さい.PDFファイ…

National Character Setとは

JDBC 4.0でPreparedStatementインタフェースとResultSetインタフェースに"National Character Set"関連の仕様追加により結構な数のメソッドが追加になっており,これを調べようと思ったのですが,この"National Character Set"が何なのかというのがまず良く…

Internals Manual

http://dev.mysql.com/doc/internals/en/index.htmlやばいのが出たw これでドキュメントの提供レベルがJBossと並んだかも.(これはJBossでいうところのAdmin_Devel相当)これが出た以上もうMySQLに「内部アーキテクチャ解説してるドキュメント出して」とは…

RowIdのC/J実装について

【ROWIDデータ型】 java.sql.RowIdデータ型が追加されました.これによりJDBCを利用するプログラムはSQLのROWIDにアクセスすることが可能となります. Mark Matthews氏と話しましたが,このRowIdについてはやはり「MySQLサーバにROWIDが実装されていない」の…

SQL2003ハンドブック―SQL最新標準規格

買いました. http://www.amazon.co.jp/exec/obidos/ASIN/488373207X/qid=1137445027/sr=1-1/ref=sr_1_0_1/250-8923686-0189818国際エクスプレス(3から4営業日で到着)を使ったので合計6000円超也.あー、しまった自腹で買ってしまったこの本なら経費で落と…

各国キャラクタセット変換

翻訳追加しました. http://ikda.net/fswiki/wiki.cgi?page=JDBC+4%2E0+%BB%C5%CD%CD%BD%F1 各国キャラクタセットの変換SQL2003は各国キャラクタセット型のサポートを提供しています.次のJDBCのデータ型は各国キャラクタセット型へアクセスする際に使用しま…

起動時のCORBA ORB/POA JNDI登録について その2

その後のJBoss-Fan-MLでのやり取りによって以下が判明. 従来の".zip"あるいは".tar.gz"形式によるバイナリ配布版ではなく新しい"-installer.jar"を使ってインストールしている模様. で,これを使った場合には "-installer.jar"を使ってインストールする場…

仕様書の翻訳

Wikiで翻訳作成開始しました.ただし,JDBC4.0SpecはPDFで220ページもあるので,もちろん全部翻訳は無理です.とりあえず目的とか背景とか4.0で何が変わるのかとかを簡潔に説明しているChapter1から3くらいまでは翻訳します.その後は,必要に応じて追加する…