示例#1
0
 protected override string InternalNativeDomainName(D4.MetaData AMetaData)
 {
     return("BigInt");
 }
示例#2
0
 public override string GetParameterMarker(SQLScalarType AScalarType, D4.MetaData AMetaData)
 {
     return(String.Format("cast(? as {0})", AScalarType.ParameterDomainName(AMetaData)));
 }
示例#3
0
 public override SQLType GetSQLType(D4.MetaData AMetaData)
 {
     return(new SQLIntegerType(8));
 }
示例#4
0
        // FindScalarType
        public override ScalarType FindScalarType(Plan APlan, string ADomainName, int ALength, D4.MetaData AMetaData)
        {
            switch (ADomainName.ToLower().Trim())
            {
            case "smallint": return(APlan.DataTypes.SystemShort);

            case "int":
            case "integer": return(APlan.DataTypes.SystemInteger);

            case "bigint": return(APlan.DataTypes.SystemLong);

            case "decimal":
            case "numeric":
            case "double":
            case "float": return(APlan.DataTypes.SystemDecimal);

            case "date": return(APlan.DataTypes.SystemDate);

            case "time": return(APlan.DataTypes.SystemTime);

            case "timestmp":                     // note that this is not a correct mapping.  This is a hack for Keystone's AS400 machine.
            case "timestamp": return((ScalarType)APlan.DataTypes.SystemDateTime);

            case "money": return(APlan.DataTypes.SystemMoney);

            case "char":
            case "character":
            case "varchar":
            case "long varchar":
            case "nchar":
            case "nvarchar":
                AMetaData.Tags.Add(new D4.Tag("Storage.Length", ALength.ToString()));
                                        #if USEISTRING
                return(IsCaseSensitive ? APlan.DataTypes.SystemString : APlan.DataTypes.SystemIString);
                                        #else
                return(APlan.DataTypes.SystemString);
                                        #endif
                                #if USEISTRING
            case "clob": return((ScalarType)(IsCaseSensitive ? APlan.Catalog[CSQLTextScalarType] : APlan.Catalog[CSQLITextScalarType]));
                                #else
            case "clob": return((ScalarType)Compiler.ResolveCatalogIdentifier(APlan, SQLTextScalarType, true));
                                #endif
            case "blob": return(APlan.DataTypes.SystemBinary);

            default: throw new SQLException(SQLException.Codes.UnsupportedImportType, ADomainName);
            }
        }
示例#5
0
 public override string ParameterDomainName(D4.MetaData AMetaData)
 {
     return("varchar(14)");
 }
示例#6
0
 public override SQLType GetSQLParameterType(D4.MetaData AMetaData)
 {
     return(new SQLStringType(14));
 }
示例#7
0
 public override SQLType GetSQLType(D4.MetaData AMetaData)
 {
     return(new SQLTimeType());
 }
示例#8
0
 public override SQLType GetSQLType(ScalarType AScalarType, D4.MetaData AMetaData)
 {
     return(new SQLNumericType(3, 0));
 }