如何在导出到dbf文件时设置列名的最大长度

时间:2015-03-23 10:11:21

标签: c# dbf

我正在将datatable导出到dbf文件。 如果我有大列名,dbf文件可以导出到前10个字符。

为什么会这样?

using (var dBaseConnection = new OleDbConnection(
    @"Provider=Microsoft.Jet.OLEDB.4.0; " +
    @" Data Source=C:\Users\RobertWray\Documents\dBase; " +
    @"Extended Properties=dBase IV"))
{
    dBaseConnection.Open();

    string createTableSyntax = 
        "Create Table Person " +
        "(Name char(50), CustomerReference char(50), Phone char(20))";
    var cmd = new OleDbCommand(createTableSyntax, dBaseConnection);
    cmd.ExecuteNonQuery();
}

是否有任何设置可以在列名中导出更多长度。?

1 个答案:

答案 0 :(得分:1)

没有

DBF文件对列长度有限制,该限制为10。如果您抽象出对文件的所有访问权限,则可以在不同的层中进行映射(使DBF中的实际列名称缩短ID);如果你只是直接写“SQL”,那你就不走运了。

为什么有限制? DBF 。你今天为什么要使用DBF?也许你的用例有一个更好的嵌入式数据库?