之前的时候挺好的程序 现在使用的是64的win7 在操作VF数据库 列数超过64列就开始报这个错误!
很奇怪 这是什么问题呢!
然后修改了连接字符串就好了! 如下边代码所示:
static void Main(string[] args)
{
Console.WriteLine("可以进行数据测试……");
Console.WriteLine("正在清空DBF的文件内容");
int Int_DeleteRowsInDbf = DeleteRowsInDBF("test.dbf");
int Int_PackDbf = Function_DbfPack("test.dbf");
//之前的连接字符串
//@"Provider=vfpoledb;Data Source=" + AppDomain.CurrentDomain.BaseDirectory + ";Collating Sequence=machine;TABLEVALIDATE=0";
//现在的连接字符串
string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + AppDomain.CurrentDomain.BaseDirectory + @"/;Extended Properties=""dBASE IV;HDR=Yes;"";";
using (OleDbConnection myConnection = new OleDbConnection(strConn))
{
myConnection.Open();
OleDbDataAdapter adpt = new OleDbDataAdapter("select * from test.dbf", myConnection);
OleDbCommandBuilder odcb = new OleDbCommandBuilder(adpt);
DataSet mySet = new DataSet();
adpt.Fill(mySet, "Datasource");
DataRow myDataRow;
DataTable myDataTable;
myDataTable = mySet.Tables["Datasource"];
for (int i = 0; i < 2000; i++)
{
myDataRow = myDataTable.NewRow();
myDataRow["yhbh"] = "001".PadLeft(8, '0');
myDataRow["dbbh"] = "DBB00001";
myDataRow["yhxm"] = "用户姓名";
myDataRow["tdcs"] = 0;
myDataRow["yhdz"] = "MPH0000001";
myDataRow["sydl"] = 0;
myDataRow["ljydl"] = 0;
myDataRow["dqjygdn"] = 0;
myDataRow["dqfygdn"] = 0;
myDataRow["dqpygdn"] = 0;
myDataRow["dqgygdn"] = 0;
myDataRow["dbcs"] = 0;
myDataRow["gfhtzcs"] = 0;
myDataRow["ffkckcs"] = 0;
myDataRow["zjycgddl"] = 0;
myDataRow["ljgdl"] = 0;
myDataRow["sgdkcs"] = 0;
myDataRow["zj1csgdkrq"] = "00/00/00 00:00";
myDataRow["wgdkcs"] = 0;
myDataRow["zj1cwgdkrq"] = "00/00/00 00:00";
myDataRow["sgkgcs"] = 0;
myDataRow["sgkgljsj"] = "000000";
myDataRow["zjsgkgkssj"] = "00/00/00 00:00";
myDataRow["zjsgkgjssj"] = "00/00/00 00:00";
myDataRow["zj1csgkgks"] = "00/00/00 00:00";
myDataRow["zj1csgkgjs"] = "00/00/00 00:00";
myDataRow["zj2csgkgks"] = "00/00/00 00:00";
myDataRow["zj2csgkgjs"] = "00/00/00 00:00";
myDataRow["wgkgcs"] = 0;
myDataRow["wgkgljsj"] = "000000";
myDataRow["zjwgkgkssj"] = "00/00/00 00:00";
myDataRow["zjwgkgjssj"] = "00/00/00 00:00";
myDataRow["zj1cwgkgks"] = "00/00/00 00:00";
myDataRow["zj1cwgkgjs"] = "00/00/00 00:00";
myDataRow["zj2cwgkgks"] = "00/00/00 00:00";
myDataRow["zj2cwgkgjs"] = "00/00/00 00:00";
myDataRow["gztzcs"] = 0;
myDataRow["ZJ1CGZTZSJ"] = "00/00/00 00:00";
myDataRow["ZJ2CGZTZSJ"] = "00/00/00 00:00";
myDataRow["ZJ3CGZTZSJ"] = "00/00/00 00:00";
myDataRow["dbcs"] = 0;
myDataRow["zjd1ctddjl"] = 0;
myDataRow["zjd2ctddjl"] = 0;
myDataRow["zjd3ctddjl"] = 0;
myDataRow["zj1cqfkssj"] = "00/00/00 00:00";
myDataRow["zj1cqfjssj"] = "00/00/00 00:00";
myDataRow["zj2cqfkssj"] = "00/00/00 00:00";
myDataRow["zj2cqfjssj"] = "00/00/00 00:00";
myDataRow["zj3cqfkssj"] = "00/00/00 00:00";
myDataRow["zj3cqfjssj"] = "00/00/00 00:00";
myDataRow["cbzt"] = 0;
myDataRow["cbrq"] = "00/00/00 00:00";
//S1YQS
myDataRow["S1YQS"] = 0;
myDataRow["s1yzs"] = 0;
myDataRow["s1ycsdl"] = 0;
myDataRow["s2yqs"] = 0;
myDataRow["s2yzs"] = 0;
myDataRow["s2ycsdl"] = 0;
myDataRow["zzbm"] = "000000001";
myDataRow["qydm"] = "QYDM000000001";
//2015年3月17日修改程序以后的数据项需要支持抄收六个月的数据所以这边需要添加一部分新的数据列
//S3YQS S3YZS S3YCSDL
//S4YQS S4YZS S4YCSDL
//S5YQS S5YZS S5YCSDL
//上三月起数 止数 差数电量
myDataRow["s3yqs"] = 0;
myDataRow["s3yzs"] = 0;
myDataRow["s3ycsdl"] = 0;
//上四月起数 止数 差数电量
myDataRow["s4yqs"] = 0;
myDataRow["s4yzs"] = 0;
myDataRow["s4ycsdl"] = 0;
//上五月起数 止数 差数电量
myDataRow["s5yqs"] = 0;
myDataRow["s5yzs"] = 0;
myDataRow["s5ycsdl"] = 0;
myDataTable.Rows.Add(myDataRow);
//adpt.Update(mySet.GetChanges(), "Datasource");
//mySet.Tables["Datasource"].AcceptChanges();
Console.WriteLine("正在执行第" + (i + 1) + "行的插入工作!");
}
adpt.Update(mySet.GetChanges(), "Datasource");
mySet.Tables["Datasource"].AcceptChanges();
myConnection.Close();
}
Console.WriteLine("执行完毕……");
Console.ReadLine();
}
资源下载地址:
http://download.csdn.net/detail/energeticsunxiaocong/8517243