代码之家  ›  专栏  ›  技术社区  ›  stevehipwell

如何在创建dbase数据库时指定数字宽度和精度?

  •  1
  • stevehipwell  · 技术社区  · 15 年前

    我们需要能够创建一个dbase数据库(.dbf文件),其中包含具有特定宽度和精度的数值列。我似乎可以设定精度,但不能设定宽度。下面的代码显示了我的连接字符串和命令文本。

    using (OleDbConnection oConnection = new OleDbConnection(String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source = {0};Extended Properties=dBase 5.0", msPath)))
    {
    
      ....
    
      oCommand.CommandText = "CREATE TABLE [Field] ([Id] Numeric (15, 3))";
      oCommand.ExecuteNonQuery();
    }
    

    这给了我一个专栏 Id,20,3 在文件中。

    必须有一种方法来设置字段宽度,而无需手动编辑.dbf文件?以前在创建shapefile时,没有其他人遇到过这个问题吗?

    2 回复  |  直到 10 年前
        1
  •  0
  •   stevehipwell    13 年前

    找不到解决方案,如果有人能想出一个,我会改变我接受的答案!

        2
  •  0
  •   DiegoLopez    10 年前

    你可以使用 Microsoft OLE DB Provider

    使用以下连接:

    connectionString = @"Provider=vfpoledb.1;Data Source=" + path + ";Collating Sequence=machine;";
    

    你会问:

    comm.CommandText = "Create table Test (FirstName Numeric(4,0),LastName Char(50) )"