OleDbConnection和OleDbCommand - 无效的授权规范

时间:2013-08-02 11:59:11

标签: c# .net winforms oledb oledbconnection

我有一个DBF file我可以使用Microsoft Visual FoxPro打开,我现在需要在Visual Studio 2012 lnauage数据中添加C#

我收到此错误:Invalid authorization specification.

使用此代码:

DialogResult result = MessageBox.Show("Do you wish to submit?", "Potvrzení", MessageBoxButtons.YesNo);

    if (result == DialogResult.Yes)
    {
        odcCON.Open();
        OleDbCommand odc = new OleDbCommand("INSERT INTO netpokl.DBF (Castka,Akce) values(@castka,@akce)");
        odc.Parameters.AddWithValue("@castka",textBox2.Text);
        odc.Parameters.AddWithValue("@akce",test);
        odc.ExecuteNonQuery();
        odcCON.Close();

    }

OleDbConnection是这样的:

 OleDbConnection odcCON = new OleDbConnection(" Provider=SQLOLEDB;Data Source=\\SERVER\\Transfer\netpokl.DBF");

1 个答案:

答案 0 :(得分:1)

要读取/写入dbase文件,您可以使用Microsoft JET OLEDB提供程序,其连接字符串如下所示:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\directory;Extended Properties=dBASE IV;User ID=Admin;Password=

请注意,数据源是dbase文件所在的文件夹。 最后在您的查询中,表名应该是没有.dbf扩展名的文件名,如下所示:

INSERT INTO netpokl (Castka,Akce) values(@castka,@akce)

如果您需要在64位应用程序上工作,可以使用Microsoft ACE OLEDB提供程序(Microsoft Access Database Engine 2010 Redistributable

Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=dBASE IV;Data Source=c:\directory;