スケーラブルデータベースサーバ HiRDB Version 8 UAP開発ガイド
表16-5の.NET Framework型及びアクセサを使用しない場合,HiRDBデータプロバイダ内部で自動的に型変換されます。NET Framework型及びアクセサを使用しない場合とは,CHAR属性の項目を持つ表にInt32型のデータをINSERTしたり,GetInt32メソッドで取得したりすることをいいます。
INSERT時の型変換一覧を表16-6,表16-7に,SELECT時の型変換一覧を表16-8,表16-9に示します。
なお,表16-6〜表16-9の記号の意味については,「16.7.3(1)記号の意味」を参照してください。
表16-6 INSERT時の型変換一覧(1/2)
.NET Framework型 | HiRDBのデータ型 | ||||||||
---|---|---|---|---|---|---|---|---|---|
I | SI | DE | F | SF | C | VC | NC | NVC | |
Boolean | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
Int16 | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Int32 | ○ | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Int64 | △2 | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
UInt16 | ○ | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
UInt32 | △2 | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
UInt64 | △2 | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Single小数部ありデータ | △4 | △3 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Single小数部なしデータ | △2 | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Double小数部ありデータ | △4 | △3 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Double小数部なしデータ | △2 | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Decimal小数部ありデータ | △4 | △3 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Decimal小数部なしデータ | △2 | △1 | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Char | ○1 | ○1 | ×1 | ×1 | ×1 | ○ | ○ | ○ | ○ |
Char[] | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
String | △2 | △1 | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
DateTime | ×1 | ×1 | ×1 | ×1 | ×1 | ○ | ○ | ×1 | ×1 |
TimeSpan | ×1 | ×1 | ×1 | ×1 | ×1 | ○ | ○ | ×1 | ×1 |
Guid | ×1 | ×1 | ×1 | ×1 | ×1 | ○ | ○ | ×1 | ×1 |
Byte | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
Byte[] | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
Sbyte | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
SByte[] | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
表16-7 INSERT時の型変換一覧(2/2)
.NET Framework型 | HiRDBのデータ型 | ||||||||
---|---|---|---|---|---|---|---|---|---|
MC | MVC | DA | T | TS | IY | IHS | BI | BL | |
Boolean | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
Int16 | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Int32 | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Int64 | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
UInt16 | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
UInt32 | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
UInt64 | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Single小数部ありデータ | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Single小数部なしデータ | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Double小数部ありデータ | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Double小数部なしデータ | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Decimal小数部ありデータ | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Decimal小数部なしデータ | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Char | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Char[] | ×1 | ×1 | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
String | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ×1 | ×1 |
DateTime | ○ | ○ | ○ | ○ | ○ | ×2 | ×2 | ×1 | ×1 |
TimeSpan | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ○ | ×1 | ×1 |
Guid | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ×1 | ×1 |
Byte | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ○ | ○ |
Byte[] | ×1 | ×1 | ×1 | ×1 | ×1 | ×2 | ×2 | ○ | ○ |
Sbyte | ○ | ○ | ×1 | ×1 | ×1 | ×2 | ×2 | ○ | ○ |
SByte[] | ×1 | ×1 | ×1 | ×1 | ×1 | ×2 | ×2 | ○ | ○ |
表16-8 SELECT時の型変換一覧(1/2)
アクセサ | HiRDBのデータ型 | ||||||||
---|---|---|---|---|---|---|---|---|---|
I | SI | DE | F | SF | C | VC | NC | NVC | |
GetBoolean | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetByte | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetBytes | ○ | ○ | ×1 | ○ | ○ | ○ | ○ | ○ | ○ |
GetChar | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetChars | ×1 | ×1 | ×1 | ×1 | ×1 | ○ | ○ | ○ | ○ |
GetData | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetDateTime | ×1 | ×1 | ×1 | ×1 | ×1 | △6 | △6 | △6 | △6 |
GetDecimal | ○ | ○ | ○ | ○ | ○ | △7 | △7 | △7 | △7 |
GetDouble | ○ | ○ | ○ | ○ | ○ | △8 | △8 | △8 | △8 |
GetFloat | ○ | ○ | ○ | ○ | ○ | △9 | △9 | △9 | △9 |
GetGuid | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetInt16 | △1 | ○ | △1 | △1 | △1 | △1 | △1 | △1 | △1 |
GetInt32 | ○ | ○ | △2 | △2 | △2 | △2 | △2 | △2 | △2 |
GetInt64 | ○ | ○ | △10 | △10 | △10 | △10 | △10 | △10 | △10 |
GetString | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
GetValue | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
GetValues | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
表16-9 SELECT時の型変換一覧(2/2)
アクセサ | HiRDBのデータ型 | ||||||||
---|---|---|---|---|---|---|---|---|---|
MC | MVC | DA | T | TS | IY | IHS | BI | BL | |
GetBoolean | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetByte | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetBytes | ○ | ○ | ×1 | ×1 | ×1 | ×1 | ×1 | ○ | ○ |
GetChar | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetChars | ○ | ○ | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
GetData | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetDateTime | △6 | △6 | ○ | ○ | ○ | ×1 | ×1 | ×1 | ×1 |
GetDecimal | △7 | △7 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
GetDouble | △8 | △8 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
GetFloat | △9 | △9 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
GetGuid | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 | ×3 |
GetInt16 | △1 | △1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
GetInt32 | △2 | △2 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
GetInt64 | △10 | △10 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 | ×1 |
GetString | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
GetValue | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
GetValues | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
HiRDBのデータ型の,記号の意味を次に示します。
記号 | 意味 |
---|---|
I | INTEGER |
SI | SMALLINT |
DE | DECIMAL,及びLARGE DECIMAL |
F | FLOAT/DOUBLE PRECISION |
SF | SMALLFLT,及びREAL |
C | CHARACTER |
VC | VARCHAR |
NC | NCHAR,及びNATIONAL CHARACTER |
NVC | NVARCHAR |
MC | MCHAR |
MVC | MVARCHAR |
DA | DATE |
T | TIME |
TS | TIMESTAMP |
IY | INTERVAL YEAR TO DAY |
IHS | INTERVAL HOUR TO SECOND |
BI | BINARY |
BL | BLOB |
○は正常,△は条件付きで動作,×はエラーとなります。さらに,これらに番号が付いている場合があります。○,△,及び×に番号が付いている場合の記号の意味を次に示します。
記号 | 意味 |
---|---|
○ | 数字の文字コードが入ります。 |
△1 |
|
△2 |
|
△3 | -32768〜32767:正常(小数点第一位四捨五入) 範囲外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
△4 | -2147483648〜2147483647:正常(小数点第一位四捨五入) 範囲外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
△5 | 0〜255:正常 範囲外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
△6 | DateTime形式データの場合:正常 DateTime形式データ以外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
△7 | Decimal形式データの場合:正常 Decimal形式データ以外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
△8 | Double形式データの場合:正常 Double形式データ以外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
△9 | Float形式データの場合:正常 Float形式データ以外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
△10 | -9223372036854775808〜9223372036854775807:正常 範囲外:[Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
×1 | [Hitachi.HiRDB.HiRDBException]KFPZ24026-E形式変換エラー |
×2 | [Hitachi.HiRDB.HiRDBException]KFPZ24107-E Decimal,日時,時間間隔型オーバフロー [Hitachi.HiRDB.HiRDBException]KFPZ24106-E 日時,時間間隔型フォーマットエラー |
×3 | [System.NotSupportedException] 未サポートエラー |
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.