【问题标题】:RODBC sqlSave column types: how determined?RODBC sqlSave 列类型:如何确定?
【发布时间】:2010-07-28 10:09:43
【问题描述】:

我想了解 RODBC 如何确定新创建的 (Access) 表的列类型? sqlSave 的 R 文档非常神秘:“类型是通过咨询参数 varTypes 和 typeInfo 来选择的”。并且没有这个论点的例子。在哪里可以找到更好的解释?

【问题讨论】:

    标签: r rodbc


    【解决方案1】:

    只需查看 RODBC 包的来源即可。

    # from R/TypeInfo.R:
    typesR2DBMS <-
        list(MySQL = list(double="double", integer="integer",
             character="varchar(255)", logical="varchar(5)"),
             ACCESS = list(double="DOUBLE", integer="INTEGER",
             character="VARCHAR(255)", logical="varchar(5)"),
             # etc ...
    

    【讨论】:

    • cran.r-project.org/src/contrib/RODBC_1.3-2.tar.gz,文件 R/TypeInfo.R,第 41 行
    • 谢谢。但我使用的是 Windows,我的 C:\Program Files\R\R-2.10.1\library\RODBC 目录不包含 TypeInfo.R。网上没有例子吗?
    • 要查看TypeInfo.R的源码,需要从上面的链接下载源码包
    • 很棒的答案。我喜欢你从源头中提取,然后参考它的来源。太好了。
    • str(getAnywhere(typesR2DBMS))
    【解决方案2】:

    无需查看来源。请改用“getSqlTypeInfo(driver)”。

    > getSqlTypeInfo("ACCESS")
    $double
    [1] "DOUBLE"
    
    $integer
    [1] "INTEGER"
    
    $character
    [1] "VARCHAR(255)"
    
    $logical
    [1] "varchar(5)"
    
    > 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-18
      • 2014-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      相关资源
      最近更新 更多