サポート > データベース活用ガイド(R6) > SQLServer 2008

ここでは、SQLServer 2008 利用時の注意点を示します。

仕様および制約

  • テーブル名(Wagbyのモデル名)の最大長は 128 文字です。
  • カラム名(Wagbyのモデル項目名)の最大長は 128 文字です。
  • 「時間型」主キーのモデルを定義することはできません。
  • 「時間型」項目を検索条件とすることはできません。
  • 順序が用意されていないため、順序はテーブルを利用して擬似的に扱います。
  • Windows Vista で採用されたサロゲート・ペア文字対応のために Japanese_XJIS_100 を使うことができます。データ型は nchar, nvarchar を指定します。ただし過去データとの互換性に問題が生じることがあるようです。詳細はマイクロソフト社へお問い合わせください。

型のマッピング

Wagby で指定した型は、データベース内で次のように扱われます。

整数型 int
文字列型 nvarchar(255)
文字列型 (テキストエリア) nvarchar(1000)
日付型 datetime
時間型 datetime
日付時間型 datetime
ファイル型(ファイル名) nvarchar(255)
1バイト整数 tinyint
2バイト整数 smallint
4バイト整数 int
8バイト整数 numeric(19,0)
4バイト浮動小数点数 float
8バイト浮動小数点数 double precision
固定値 (作成日/更新日) datetime
その他 (URL型/メールアドレス型など) nvarchar(255)
※1 モデル参照の場合は、参照先モデルの主キーの型に準じます。
※2 開発者の方で型を変更することもできます。詳細は Wagby 定義ファイルマニュアル「モデルの定義 > 項目の型を定義する」をお読み下さい。
※3 Wagby R6.7 Update 3 より、文字列型は nvarchar を使うようになりました。それ以前の Wagby は varchar となっています。varchar 型で指定する数は「バイト」単位です。詳細はデータベースのマニュアルでご確認ください。

JDBCドライバの入手

以下のサイトより JDBC ドライバを入手することができます。
Microsoft SQL Server 2005 JDBC Driver 1.2
http://www.microsoft.com/downloads/details.aspx?familyid=C47053EB-3B64-4794-950D-81E1EC91C1BA&displaylang=ja

表記上は「2005」となっていますが、以下のサイトにて SQL Server 2008 に接続可能とあります。
[Microsoft SQL Server 2008 用 Feature Pack - 2008 年 8 月]
http://www.microsoft.com/downloads/details.aspx?FamilyId=C6C3E9EF-BA29-4A43-8D69-A2BED18FE73C&displaylang=ja

ダウンロードした JDBC ファイルの配置については「データベース接続手順」をお読み下さい。

JDBC Driver のバージョンは 1.2 が必要です。SQL Server 2005 で利用していた 1.1 では接続できません。

Javaのバージョン

お使いの環境が Java 5 の場合は sqljdbc.jar をご利用ください。sqljdbc4.jar は Java 6 専用となっています。 また、sqljdbc4.jar を利用する場合は sqljdbc.jar へ改名してお使い下さい。

TCP/IP が有効になっていることの確認

JDBC で接続するためには、TCP/IP が有効になっている必要があります。

URL指定時の注意

SQL Server 2005 をインストールしたときに、名前付きインスタンスでインストールしたときには、データベース接続 url に、インスタンス名またはインスタンスが起動しているポート番号を指定する必要があります。

「既定のインスタンス」では1433/tcp、「名前付きインスタンス」ではインスタンスの初回起動時に未使用の TCP ポート番号が動的に割り当てられます。

例) SQL Server 2005 Express Edition をインストールした場合

url="jdbc:sqlserver://192.168.6.75\SQLEXPRESS;databasename=sampledb"

または

url="jdbc:sqlserver://192.168.6.75:1433;databasename=sampledb"

と指定します。(上記例のIPアドレス部分である「192.168.6.75」は、お使いのLAN環境にあわせて適当に読み替えてください。)

不具合情報

Java 6 Update 29 では JDBC ドライバが動作しないという現象が報告されています。動作しない場合、お使いの Java のバージョンを確認してください。(Wagby 6.6 Update 12 は、このバージョンの Java を含んでいます。)

Unicode文字への対応

Wagby R6.7 Update 3 より、文字列型の項目については SQL Server が用意する nvarchar を使うようになっています。nvarchar とすることで「"鴎"の旧漢字」や、サロゲートペア文字(例:魚のホッケ:魚へんに花)も格納できるようになります。

varchar として使いたい場合は、項目毎に、モデル項目定義シートの「テーブル定義の型」の欄に、データベースの型を指定してください。

※ varchar と nvarchar の違いによる運用面の影響として、照合順序(ソートの順序)が変わることがあげられます。ただし全角文字限定であり、半角文字のソート順は不変です。