|目次前ページ次ページ|
───────────────────────────────────
5.定義値の説明 
───────────────────────────────────
======================================= 
       テーブル フィールドタイプ 
======================================= 
 (※変換されます)と記載のあるものは、文字データとの変換が 
 内部的に行われるので、プログラムでは文字データとして処理してください 
 [注意]以下は、BDE論理型であり、 
       (※変換されます)と記載がる型のみ利用出来ます。 
       (※BLOB関数を使用)は、別途BLOB関数を使用すれば操作可能 
 [補足]オラクルにおける、VARCHAR2型は、255バイト以下は、ZSTRING型に 
       256バイト以上は、BLOB型になります 
       BLOB型を扱うには、BLOB型操作手順必要です。 
---------------------------------------------------------------------
 フィールドタイプ (Logical) 
---------------------------------------------------------------------
UNKNOWN      0    [不可]             // 
ZSTRING      1    (※変換されます) // Null terminated string 
DATE         2    (※変換されます) // Date     (32 bit) 
BLOB         3    (※BLOB関数を使用)   // Blob 
BOOL         4                 // Boolean  (16 bit) 
INT16        5    (※変換されます) // 16 bit signed number 
INT32        6    (※変換されます) // 32 bit signed number 
FLOAT        7    (※変換されます) // 64 bit floating point 
BCD          8    [不可]        // BCD 
BYTES        9    [不可]        // Fixed number of bytes 
TIME         10   (※変換されます) // Time        (32 bit) 
TIMESTAMP    11   (※変換されます) // Time-stamp  (64 bit) 
UINT16       12   (※変換されます) // Unsigned 16 bit integer 
UINT32       13   (※変換されます) // Unsigned 32 bit integer 
FLOATIEEE    14   [不可]             // 80-bit IEEE float 
VARBYTES     15   [不可]             // Length prefixed var bytes 
LOCKINFO     16   [不可]             // Look for LOCKINFO typedef 
MAXLOGFLDTYPES  17  [不可]           // Number of logical fieldtypes 
---------------------------------------------------------------------
 サブタイプ (Logical) 
---------------------------------------------------------------------
FLOAT サブタイプ 
   MONEY      21                // Money 
BLOB サブタイプ 
   MEMO          22             // Text Memo 
   BINARY        23             // Binary data 
   FMTMEMO       24             // Formatted Text 
   OLEOBJ        25             // OLE object (Paradox) 
   GRAPHIC       26             // Graphics object 
   DBSOLEOBJ     27             // dBASE OLE object 
   TYPEDBINARY   28             // Typed Binary data 
ZSTRING サブタイプ 
   PASSWORD      1              // Password 
INT32 サブタイプ 
   AUTOINC      29 
// Paradox types (Physical) 
   PDXCHAR        (257)        // Alpha    (string) 
   PDXNUM         (258)        // Numeric 
   PDXMONEY       (259)        // Money 
   PDXDATE        (260)        // Date 
   PDXSHORT       (261)        // Short 
   PDXMEMO        (262)        // Text Memo       (blob) 
   PDXBINARYBLOB  (263)        // Binary data     (blob) 
   PDXFMTMEMO     (264)        // Formatted text  (blob) 
   PDXOLEBLOB     (265)        // OLE object      (blob) 
   PDXGRAPHIC     (266)        // Graphics object (blob) 
   PDXBLOB        (262)        // =PDXMEMO 
   PDXLONG        (267)        // Long 
   PDXTIME        (268)        // Time 
   PDXDATETIME    (269)        // Time Stamp 
   PDXBOOL        (270)        // Logical 
   PDXAUTOINC     (271)        // Auto increment (long) 
   PDXBYTES       (272)        // Fixed number of bytes 
   PDXBCD         (273)        // BCD (32 digits) 
   PDXUNICHAR     (274)        // not supported yet 
// xBASE types (Physical) 
   DBCHAR         (513)        // Char string 
   DBNUM          (514)        // Number 
   DBMEMO         (515)        // Memo          (blob) 
   DBBOOL         (516)        // Logical 
   DBDATE         (517)        // Date 
   DBFLOAT        (518)        // Float 
   DBLOCK         (519)        // Logical type is LOCKINFO 
   DBOLEBLOB      (520)        // OLE object    (blob) 
   DBBINARY       (521)        // Binary data   (blob) 
   DBBYTES        (522)        // Only for TEMPORARY tables 
// xBASE key types (Cannot be used as field types) 
   DBKEYNUM       (528) 
   DBKEYBCD       (529) 
// Ascii types (Physical) 
   ASCCHAR        (641)       // Char string 
   ASCNUM         (642)       // Number 
   ASCBOOL        (643)       // Logical 
   ASCDATE        (644)       // Date 
   ASCFLOAT       (645)       // Float 
   ASCLOCK        (646)       // Not used 
   ASCTIMESTAMP   (647)       // TimeStamp 
   ASCTIME        (648)       // Time 
   ASCLONG        (649)       // Long 
   ASCMONEY       (650)       // Money 
//================================== 
//       Field descriptor 
//================================== 
// Field Val Check type 
   NOCHECKS     = 0        // Does not have explicit val checks 
   HASCHECKS    = 1        // One or more val checks on the field 
   UNKNOWN      = 2        // Dont know at this time 
// Field Rights 
   READWRITE    = 0        // Field can be Read/Written 
   READONLY     = 1        // Field is Read only 
   NONE         = 2        // No Rights on this field 
   UNKNOWN      = 3        // Dont know at this time 
───────────────────────────────────
              5-2
───────────────────────────────────
5ー2 データ変換の説明 
───────────────────────────────────
======================================= 
      論理型へのデータ変換 
======================================= 
 [注意]本ソフトウエアは、BDE論理型のみ利用出来ます。 
       さらに(※変換されます)と記載がる型のみ利用出来ます。 
次の表では物理型から論理型へ変換し, 
さらに異なる種類のドライバの物理型へ変換した場合の様子を示します。 
Paradox          // BDE                  // dBASE  
物理型から       // 論理型へ             // 物理型へ 
fldPDXBINARYBLOB // fldBLOB/fldstBINARY  // fldDBMEMO 
fldPDXBLOB       // fldPDXMEMO           // fldDBMEMO 
fldPDXCHAR       // fldZSTRING           // fldDBCHAR 
fldPDXDATE       // fldDATE              // fldDATE 
fldPDXFMTMEMO    // fldBLOB/fldstFMTMEMO // fldDBMEMO 
fldPDXGRAPHIC    // fldBLOB/fldstGRAPHIC // fldDBBINARY 
fldPDXMEMO       // fldBLOB/fldstMEMO    // fldDBMEMO 
fldPDXMONEY      // fldFLOAT/fldstMONEY  // fldDBNUM [20.4] 
fldPDXNUM        // fldFLOAT             // fldDBFLOAT [20.4] 
fldPDXOLEBLOB    // fldBLOB/fldstOLEOBJ  // fldDBOLEBLOB 
fldPDXSHORT      // fldINT16             // fldDBNUM [6.0] 
 
Paradox レベル 5 データ型: 
 
fldPDXAUTOINC    // fldINT32/fldstAUTOINC // fldDBNUM [11.0] 
fldPDXBCD        // fldBCD               // fldDBCHAR  
fldPDXBOOL       // fldBOOL              // fldDBBOOL 
fldPDXBYTES      // fldBYTES             // fldDBMEMO 
fldPDXDATETIME   // fldTIMESTAMP         // fldDBCHAR [30] 
fldPDXLONG       // fldINT32             // fldDBNUM [11.0] 
fldPDXTIME       // fldTIME              // fldDBCHAR [>8] 
 
dBASE            // BDE                  // Paradox  
物理型から       // 論理型へ             // 物理型へ 
 
fldDBBINARY      // fldBLOB/fldstTYPEDBINARY // fldPDXBINARYBLOB 
fldDBLOCK        // fldLOCKINFO          // fldPDXCHAR [24] 
fldDBBOOL        // fldBOOL              // fldPDXBOOL 
fldDBBYTES       // fldBYTES             // fldPDXBYTES(一時テーブルのみ)
fldDBCHAR        // fldZSTRING           // fldPDXCHAR 
fldDBDATE        // fldDATE              // fldPDXDATE 
fldDBFLOAT       // fldFLOAT             // fldPDXNUM 
fldDBMEMO        // fldBLOB/fldstMEMO    // fldPDXMEMO 
fldDBNUM         // if ( iUnits2=0 && iUnits1<5)
                          fldINT16       // fldPDXSHORT 
                 // else  fldFLOAT       // fldPDXNUM 
fldDBOLEBLOB     // fldBLOB/fldstDBSOLEOBJ // fldPDXOLEBLOB 
 
Oracle       // BDE         // Paradox         // dBASE  
物理型から   // 論理型へ    // 物理型へ        // 物理型へ 

fldORACHAR   // fldZSTRING   // fldPDXCHAR      // fldDBCHAR 
fldORARAW    // fldVARBYTES  // fldPDXBINARYBLOB // fldDBMEMO 
fldORADATE   // fldTIMESTAMP // fldPDXDATETIME  // fldDBCHAR 
fldORANUMBER // fldFLOAT // fldPDXNUM // fldDBFLOAT [20.4] 
fldORALONG   // fldBLOB/fldstMEMO // fldPDXMEMO // fldDBMEMO 
fldORALONGRAW // fldBLOB/fldstBINARY // fldPDXBINARYBLOB // fldDBMEMO 
fldORAVARCHAR // fldZSTRING   // fldPDXCHAR     // fldDBCHAR 
fldORAVARCHAR2   
 iUnits1 <=255 // fldSTRING   // fldPDXCHAR     // fldDBCHAR    
 iUnits1 >255  // fldBLOB/fldstMEMO // fldPDXMEMO  // fldDBMEMO 
fldORAFLOAT    // fldFLOAT    // fldPDXNUM      // fldDBFLOAT [20.4] 
 
Sybase        // BDE          // Paradox        // dBASE  
物理型から    // 論理型へ     // 物理型へ       // 物理型へ 
 
fldSYBBINARY  // fldBYTES     // fldPDXBYTES    // fldDBMEMO 
fldSYBBIT     // fldBOOL      // fldPDXBOOL     // fldDBBOOL 
fldSYBCHAR    // fldZSTRING   // fldPDXCHAR     // fldDBCHAR 
fldSYBDATETIME // fldTIMESTAMP // fldPDXDATETIME // fldDBDATE 
fldSYBDATETIME4 // fldTIMESTAMP // fldPDXDATETIME // fldDBDBDATE 
fldSYBFLOAT   // fldFLOAT     // fldPDXNUM      // fldDBFLOAT [20.4] 
fldSYBFLOAT4  // fldFLOAT     // fldPDXNUM      // fldDBFLOAT [20.4] 
fldSYBIMAGE   // fldBLOB/fldstBINARY // fldPDXBINARYBLOB // fldDBMEMO 
fldSYBINT     // fldINT32     // fldPDXLONG     // fldDBNUM [11.0] 
fldSYBMONEY   // fldFLOAT/fldstMONEY // fldPDXMONEY // fldDBNUM  [20.4] 
fldSYBMONEY4  // fldFLOAT/fldstMONEY // fldPDXMONEY // fldDBNUM [20.4] 
fldSYBSMALLINT // fldINT16 // fldPDXSHORT // fldDBNUM [6.0] 
fldSYBTEXT     // fldBLOB/fldstMEMO // fldPDXMEMO // fldDBMEMO 
fldSYBTIMESTAMP // fldVARBYTES // fldPDXBINARYBLOB // fldDBMEMO 
fldSYBTINYINT  // fldINT16 // fldPDXSHORT // fldDBNUM [6.0] 
fldSYBVARBINARY // fldVARBYTES // fldPDXBINARYBLOB // fldDBMEMO 
fldSYBVARCHAR  // fldZSTRING // fldPDXCHAR // fldDBCHAR 
 
Sybase System 10 を使っている場合,以下の Sybase 物理型が利用できます。 
 
Sybase         // BDE         // Paradox      // dBASE  
物理型から     // 論理型へ    // 物理型 へ    // 物理型へ 
 
fldSYBDECIMAL  // fldFLOAT    // fldPDXNUM     // fldDBFLOAT(20,4) 
fldSYBNUMERIC  // fldFLOAT    // fldPDXNUM     // fldDBFLOAT(20,4) 
 
MS SQL         // BDE         // Paradox      // dBASE 
物理型から     // 論理型へ    // 物理型へ     // 物理型へ 
 
fldMSSBINARY   // fldBYTES    // fldPDXBYTES  // fldDBMEMO 
fldMSSBIT      // fldBOOL     // fldPDXBOOL   // fldDBBOOL 
fldMSSCHAR     // fldZSTRING  // fldPDXCHAR   // fldDBCHAR 
fldMSSDATETIME // fldTIMESTAMP // fldPDXDATETIME // fldDBCHAR 
fldMSSDATETIME4 // fldTIMESTAMP // fldPDXDATETIME // fldDBCHAR 
fldMSSDECIMAL  // fldFLOAT     // fldPDXNUM   // fldDBFLOAT(20,4) 
fldMSSFLOAT    // fldFLOAT     // fldPDXNUM   // fldDBFLOAT [20.4] 
fldMSSFLOAT4   // fldFLOAT     // fldPDXNUM   // fldDBFLOAT [20.4] 
fldMSSIMAGE  // fldBLOB/fldstBINARY // fldPDXBINARYBLOB // fldDBMEMO 
fldMSSINT      // fldINT32 // fldPDXLONG // fldDBNUM [11.0] 
fldMSSMONEY    // fldFLOAT/fldstMONEY // fldPDXMONEY // fldDBNUM  [20.4] 
fldMSSMONEY4   // fldFLOAT/fldstMONEY // fldPDXMONEY // fldDBNUM [20.4] 
fldMSSNUMERIC  // fldFLOAT // fldPDXNUM // fldDBFLOAT(20,4) 
fldMSSSMALLINT // fldINT16 // fldPDXSHORT // fldDBNUM [6.0] 
fldMSSTEXT     // fldBLOB/fldstMEMO // fldPDXMEMO // fldDBMEMO 
fldMSSTIMESTAMP // fldVARBYTES // fldPDXBINARYBLOB // fldDBMEMO 
fldMSSTINYINT   // fldINT16 // fldPDXSHORT // fldDBNUM [6.0] 
fldMSSVARBINARY // fldVARBYTES // fldPDXBINARYBLOB // fldDBMEMO 
fldMSSVARCHAR   // fldZSTRING // fldPDXCHAR // fldDBCHAR 
 
InterBase       // BDE           // Paradox        // dBASE  
物理型から      // 論理型へ      // 物理型へ       // 物理型へ 
 
fldIBBLOB        // fldBLOB      // fldPDXBINARYBLOB // fldDBMEMO 
fldIBBLOB/1      // fldBLOB/fldstMEMO // fldPDXMEMO  // fldDBMEMO 
fldIBCHAR 
  iUnits 1 <=255 // fldZSTRING   // fldPDXCHAR  // fldDBCHAR    
  iUnits1 > 255  // fldBLOB/fldstMEMO // fldPDXMEMO // fldDBMEMO 
fldIBDATE        // fldTIMESTAMP // fldPDXDATETIME // fldDBDATE 
fldIBDOUBLE      // fldFLOAT // fldPDXNUM // fldDBFLOAT [20.4] 
fldIBFLOAT       // fldFLOAT // fldPDXNUM // fldDBFLOAT [20.4] 
fldIBLONG        // fldINT32 // fldPDXLONG // fldDBNUM [11.0] 
fldIBSHORT       // fldINT16 // fldPDXSHORT // fldDBNUM [6.0] 
fldIBVARYING     
  iUnits1 <= 255 // fldSTRING // fldPDXCHAR // fldDBCHAR     
  iUnits1 >255   // fldBLOB/fldstMEMO // fldPDXMEMO // fldDBMEMO 
───────────────────────────────────
              5-3
───────────────────────────────────
5ー3.異なるドライバへのデータ変換の説明 
======================================= 
       異なるドライバへのデータ変換 
======================================= 
 [注意]本ソフトウエアは、BDE論理型のみ利用出来ます。 
       さらに(※変換されます)と記載がる型のみ利用出来ます。 
テーブルが異なる種類のドライバのテーブルにコピーされたり, 
追加されたりすると,次の表に従ってデータ型の変換が行われます。 
 
Paradoxから //dBASE へ //Oracle へ //Sybase へ //InterBase へ //MSSQL へ 
 
文字型     // 文字型   // VarChar2 // Char // VarChar // Char 
実数型     // 浮動型 [20.4] // Number // Float // Double // Float 
金額型     // 数値型 [20.4] // Number // Money // Double // Money 
日付型     // 日付型 // Date // DateTime // Date // DateTime 
整数型     // 数値型 [6.0] // Number // SmallInt // Short // SmallInt 
メモ型     // メモ型 // Long // Text // Blob/1 // Text 
バイナリ型 // メモ型 // LongRaw // Image // Blob // Image 
書式付きメモ型 // メモ型 // LongRaw // Image // Blob // Image 
OLE 型     // OLE 型 // LongRaw // Image // Blob // Image 
グラフィック型 // バイナリ型 // LongRaw // Image // Blob // Image 
倍長整数型 // 数値型 [11.0] // Number // Int // Long // Int 
時間型     // 文字型 [>8] // Date // DateTime // Date // DateTime 
日付時間型 // 文字型 [>8] // Date // DateTime // Date // DateTime 
論理型     // 論理型 // VarChar2 [1]  // Bit // Character [1] // Bit 
カウンタ型 // 数値型 [11.0] // Number // Int // Long // Int 
バイト型   // メモ型 // Raw // Binary // Varying // Binary 
BCD 型     // 数値型 // Number // Float // Double // Float 
 
dBASEから  //Paradox へ //Oracle へ //Sybase へ //InterBase へ //MSSQL へ
 
文字型     // 文字型 // Character // VarChar // Varying // Character 
数値型 
  iUnits2=0 &&iUnits1<5 
           // 整数型 // Number // SmallInt // Short // SmallInt 
その他     // 実数型 // Number // Float // Double // Float 
浮動型     // 実数型 // Number // Float // Double // Float 
日付型     // 日付型 // Date // DateTime // Date // DateTime 
メモ型     // メモ型 // Long // Text // Blob/1 // Text 
論理型     // 論理型 // Character [1] // Bit // Character // Bit 
Lock型     // 文字型[24]//VarChar2[25]//Char[25]//VarChar[25]//Char[25] 
OLE型      // OLE型  // LongRaw // Image // Blob // Image 
バイナリ型 // グラフィック型 // LongRaw // Image // Blob // Image 
 
Oracleから //Paradox へ //dBASE へ //Sybase へ //InterBase へ //MSSQL へ 
Char       // 文字型 // 文字型 // Char // VarChar // Char 
Raw        // バイナリ型 // メモ型 // VarBinary // VarChar // VarBinary 
Date       // 日付時間型 // 文字型 // DateTime // Date // DateTime 
Number     // 実数型 // 浮動型 [20.4] // Float // Double // Float 
Long       // メモ型 // メモ型 // Text // Blob/1 // Text 
LongRaw    // バイナリ型 // メモ型 // Image // VarChar // Image 
 
Sybaseから // Paradox へ // dBASE へ // Oracle へ // InterBase へ // MSSQL へ
 
Char       // 文字型 // 文字型 // VarChar2 // VarChar // Char 
VarChar    // 文字型 // 文字型 // VarChar2 // VarChar // VarChar 
Int        // 倍長整数型 // 数値型 [11.0] // Number // Long // Int 
SmallInt   // 整数型 // 数値型 [6.0] // Number // Short // SmallInt 
TinyInt    // 整数型 // 数値型 [6.0] // Number // Short // TinyInt 
Float      // 実数型 // 浮動型 [20.4] // Number // Double // Float 
Money      // 金額型 // 数値型 [20.4] // Number // Double // Money 
Text       // メモ型 // メモ型 // Long // Blob/1 // Text 
Binary     // バイナリ型 // メモ型 // Raw // VarChar // Binary 
Var Binary // バイナリ型 // メモ型 // Raw // VarChar // VarBinary 
Image      // バイナリ型 // メモ型 // LongRaw // Blob // Image 
Bit        // 論理型 // 論理型 // Character // VarChar // Bit 
DateTime   // 日付時間型 // 文字型 // DAte // Date // DateTime 
TimeStamp  // バイナリ型 // メモ型 // Raw // VarChar // TimeStamp 
Float4     // 実数型 // 数値型 // Number // Double // Float4 
Money4     // 金額型 // 数値型 [20.4] // Number // Double // Money4 
DateTime4  // DateTime // Date // Date // Date // DateTime4 

Interbaseから // Paradoxへ // dBASEへ // Oracleへ // Sybaseへ // MSSQLへ 
Short     // 整数型 // 数値型 [6.0] // Number // Small Int // SmallInt 
Long      // 倍長整数型 // 数値型 [11.0] // Number // Int // Int 
Float     // 実数型 // 浮動型 [20.4] // Number // Float // Float 
Double    // 実数型 // 浮動型 [20.4] // Number // Float // Float 
Char      // 文字型 // 文字型 // VarChar2 // Char // Char 
VarChar   // 文字型 // 文字型 // VarChar2 // Char // Char 
Date      // 日付時間型 // 文字型 // Date // DateTime // DateTime 
Blob      // バイナリ型 // メモ型 // LongRaw // Image // Image 
Blob/1    // メモ型 // メモ型 // Long // Text // Text 
 
MSSQL から//Paradox へ//dBASE へ//Oracle へ//InterBase へ//Sybase へ 
 
Char      // 文字型 // 文字型 // VarChar2 // VarChar // Char 
VarChar   // 文字型 // 文字型 // VarChar2 // VarChar // VarChar 
Int       // 倍長整数型 // 数値型 [11.0] // Number // Long // Int 
SmallInt  // 整数型 // 数値型 [6.0] // Number // Short // SmallInt 
TinyInt   // 整数型 // 数値型 [6.0] // Number // Short // TinyInt 
Float     // 実数型 // 浮動型 [20.4] // Number // Double // Float 
Money     // 金額型 // 数値型 [20.4] // Number // Double // Money 
Text      // メモ型 // メモ型 // Long // Blob/1 // Text 
Binary    // バイナリ型 // メモ型 // Raw // VarChar // Binary 
VarBinary // バイナリ型 // メモ型 // Raw // VarChar // VarBinary 
Image     // バイナリ型 // メモ型 // LongRaw // Blob // Image 
Bit       // 論理型 // 論理型 // Character // VarChar // Bit 
DateTime  // 日付時間型 // 文字型 // DAte // Date // DateTime 
TimeStamp // バイナリ型 // メモ型 // Raw // VarChar // TimeStamp 
Float4    // 実数型 // 数値型 // Number // Double // Float4 
Money4    // 金額型 // 数値型 [20.4] // Number // Double // Money4 
DateTime4 // DateTime // Date // Date // Date // DateTime4 
───────────────────────────────────
              5-4
     |目次前ページ次ページ