MSSQL

SQL Server 分布式查询:OLE DB连接(二)

日期:2015-06-28 00:00:00 来源: IT猫扑网

 分布式查询中数据类型的处理

OLE DB 提供程序按照由OLE DB 定义的数据类型(由 OLE DB 的 DBTYPE 指示)表明它们的数据。SQL Server 在服务器中以本地的SQL Server 类型处理外部数据;不管数据是被SQL Server 使用还是从SQL Server 导出,这种处理方式都会产生从 OLE DB 数据类型到SQL Server 本地数据类型的映射(见表 3)或者从SQL Server 本地数据类型到 OLE DB 数据类型的映射。这种映射是以隐含方式实现的,除非另外注明。

分布式查询中的数据类型使用下列两种映射方式之一进行处理:

表 3:SQL Server 和 OLE-DB 数据类型映射表。

相关文章

    相关下载

      网友评论

      我要评论...
        没有更早的评论了
        取消
        OLE DB 类型DBCOLUMNFLAGSQL Server 数据类型
        DBTYPE_I1* numeric(3,0)
        DBTYPE_I2 smallint
        DBTYPE_I4 int
        DBTYPE_I8 numeric(19,0)
        DBTYPE_UI1 tinyint
        DBTYPE_UI2* numeric(5,0)
        DBTYPE_UI4* numeric(10,0)
        DBTYPE_UI8* numeric(20,0)
        DBTYPE_R4 float
        DBTYPE_R8 real
        DBTYPE_NUMERIC numeric
        DBTYPE_DECIMAL decimal
        DBTYPE_CY money
        DBTYPE_BSTRDBCOLUMNFLAGS_ISFIXEDLENGTH=true
        或最大长度大于 4000 个字符
        ntext
        DBTYPE_BSTRDBCOLUMNFLAGS_ISFIXEDLENGTH=truenchar
        DBTYPE_BSTRDBCOLUMNFLAGS_ISFIXEDLENGTH=falsenvarchar
        DBTYPE_IDISPATCH Error
        DBTYPE_ERROR Error
        DBTYPE_BOOL bit
        DBTYPE_VARIANT* nvarchar
        DBTYPE_IUNKNOWN Error
        DBTYPE_GUID uniqueidentifier
        DBTYPE_BYTESDBCOLUMNFLAGS_ISLONG=true 或最大长度大于 8000image
        DBTYPE_BYTESDBCOLUMNFLAGS_ISROWVER=true,
        DBCOLUMNFLAGS_ISFIXEDLENGTH=true、
        列大小等于 8 或未报告最大长度。
        timestamp
        DBTYPE_BYTESDBCOLUMNFLAGS_ISFIXEDLENGTH=truebinary
        DBTYPE_BYTESDBCOLUMNFLAGS_ISFIXEDLENGTH=truevarbinary
        DBTYPE_STRDBCOLUMNFLAGS_ISFIXEDLENGTH=truechar
        DBTYPE_STRDBCOLUMNFLAGS_ISFIXEDLENGTH=truevarchar
        DBTYPE_STRDBCOLUMNFLAGS_ISLONG=true 或最大长度大于 8000 个字符或未报告最大长度。text
        DBTYPE_WSTRDBCOLUMNFLAGS_ISFIXEDLENGTH=truenchar
        DBTYPE_WSTRDBCOLUMNFLAGS_ISFIXEDLENGTH=falsenvarchar
        DBTYPE_WSTRDBCOLUMNFLAGS_ISLONG=true 或 最大长度大于 4000 个字符或未报告最大长度。ntext
        DBTYPE_UDT