Skip to content

[datasource] bug: handle oracle type #73

@hantmac

Description

@hantmac

Oracle type handle uncorrectly here:

Image

All the oracle type use the scanArgs[i] = new(sql.RawBytes) logic.

For oracle 11g 12c,the types are:

        switch columnType {

        case "NUMBER", "INTEGER", "FLOAT", "BINARY_FLOAT", "BINARY_DOUBLE":
            scanArgs[i] = new(sql.NullFloat64)
        case "CHAR", "NCHAR", "VARCHAR", "VARCHAR2", "NVARCHAR2", "CLOB", "NCLOB":
            scanArgs[i] = new(sql.NullString)
        case "DATE", "TimeStampDTY", "TimeStampTZ_DTY", "TimeStampLTZ_DTY":
            scanArgs[i] = new(sql.NullTime)
        case "IntervalYM_DTY", "IntervalDS_DTY":
            scanArgs[i] = new(sql.NullString)
        case "RAW", "LONG", "LongRaw", "OCIBlobLocator", "IBDouble":
            scanArgs[i] = new(sql.RawBytes)
        default:
            slog.Errorf("Unsupported column type: %s", columnType)
            os.Exit(1)
        }

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions