将数据添加到DBF文件会添加_NullFlags列

时间:2015-06-17 08:52:51

标签: c# winforms oledb dbf

我目前正在开发一个从sql数据库获取信息的程序,并创建一个包含信息的.DBF。我得到了它创建文件并添加列/行的程度。但每次我运行它时,它都会添加一个名为_NullFlags的列,我宁愿不在文件中。我该怎么办呢?

//Create dbf file
OleDbCommand cmd1 = new OleDbCommand("Create Table '" + leverancier + "' (Best N(5), Aanb N(5), Art C(8), Ref C(60), Oms C(40), Plan D, Rem C(40))", con);
cmd1.ExecuteNonQuery();


//add row
OleDbCommand cmd2 = new OleDbCommand(@"Insert Into '" + leverancier + "'(Best,Aanb,Art,Ref,Oms,Plan,Rem) Values (?,?,?,?,?,?,?)", con);
cmd2.Parameters.AddWithValue("?", Convert.ToInt32(DRorder["BEST"]));
cmd2.Parameters.AddWithValue("?", Convert.ToInt32(DRorder["AANB"]));
cmd2.Parameters.AddWithValue("?", Convert.ToString(DRorder["ART"]));
cmd2.Parameters.AddWithValue("?", "ref");
cmd2.Parameters.AddWithValue("?", Convert.ToString(DRorder["OMS"]));
cmd2.Parameters.AddWithValue("?", Convert.ToDateTime(DRorder["PLAN"]));
cmd2.Parameters.AddWithValue("?", "rem");
cmd2.ExecuteNonQuery();

1 个答案:

答案 0 :(得分:1)

_NullFlags是一个私有字段,dbf使用该字段来跟踪哪些字段可以具有Null值。

如果您确实不想要它,请尝试在每个字段后添加not null

Best N(5) not null, Aanb N(5) not null, ...