Board index » Visual Studio » Opening a dbf file with .NET code

Opening a dbf file with .NET code

Visual Studio298
I have a simple dbf file with the name of OTHWAGE.dbf. I can open it in

Visual Studio Server Explorer and see its fields and records by creating a

Data Connection. When I copy the connection string and combine it with code

from VS Help, I end up with the following:



Dim sConnection As String = "Provider=MSDASQL.1;

Persist Security Info=False;

Data Source=dBASE Files;

Extended Properties=""DSN=dBASE Files;DBQ=C:\Temp;

DefaultDir=c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE;

DriverId=533;MaxBufferSize=2048;

PageTimeout=5

;"";

Initial Catalog=C:\Temp"



Dim mySelectQuery As String = "SELECT OTHWAGE.* FROM OTHWAGE"

Dim myConnection As New System.Data.Odbc.OdbcConnection(sConnection)

Dim myCommand As New System.Data.Odbc.OdbcCommand(mySelectQuery,

myConnection)

myConnection.Open()

Dim myReader As

System.Data.Odbc.OdbcDataReader = myCommand.ExecuteReader()

While myReader.Read()

Console.WriteLine(myReader.GetString(1))

End While



For readability purposes, I added carriage returns to the connection string.

When I execute this code, I get a system error at the myConnection.Open()

line. What I am I doing wrong with this simple code?


-
 

Re:Opening a dbf file with .NET code

Hi Joe,



First off, try the FoxPro and Visual FoxPro OLE DB data provider, available

from msdn.microsoft.com/vfoxpro/downloads/updates">msdn.microsoft.com/vfoxpro/downloads/updates . For your

connection string use:



"Provider=VFPOLEDB.1;Data Source = C:\Temp;"



That's all you need for free tables. If you still have problems, post back.



--

Cindy Winegarden MCSD, Microsoft Visual Foxpro MVP

cindy_winegarden@msn.com www.cindywinegarden.com

Blog: spaces.msn.com/members/cindywinegarden">spaces.msn.com/members/cindywinegarden





"genojoe" <genojoe@discussions.microsoft.com>wrote in message

Quote
I have a simple dbf file with the name of OTHWAGE.dbf. I can open it in

Visual Studio Server Explorer and see its fields and records by creating a

Data Connection. When I copy the connection string and combine it with

code

from VS Help, I end up with the following:



Dim sConnection As String = "Provider=MSDASQL.1;

Persist Security Info=False;

Data Source=dBASE Files;

Extended Properties=""DSN=dBASE Files;DBQ=C:\Temp;

DefaultDir=c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE;

DriverId=533;MaxBufferSize=2048;

PageTimeout=5

;"";

Initial Catalog=C:\Temp"



Dim mySelectQuery As String = "SELECT OTHWAGE.* FROM OTHWAGE"

Dim myConnection As New

System.Data.Odbc.OdbcConnection(sConnection)

Dim myCommand As New System.Data.Odbc.OdbcCommand(mySelectQuery,

myConnection)

myConnection.Open()

Dim myReader As

System.Data.Odbc.OdbcDataReader = myCommand.ExecuteReader()

While myReader.Read()

Console.WriteLine(myReader.GetString(1))

End While



For readability purposes, I added carriage returns to the connection

string.

When I execute this code, I get a system error at the myConnection.Open()

line. What I am I doing wrong with this simple code?





-

Re:Opening a dbf file with .NET code

I agree it should work. This time I even began a new project (on same

computer). One form, one button. FoxPro provider worked great in the Server

Explorer.



I crash at last line of code shown below:



Dim sConnection As String = "Provider=VFPOLEDB.1;Data Source = C:\Temp;"

Dim mySelectQuery As String = "SELECT OTHWAGE.* FROM OTHWAGE"

Dim myConnection As New System.Data.Odbc.OdbcConnection(sConnection)

Dim myCommand As New System.Data.Odbc.OdbcCommand(mySelectQuery, myConnection)



myConnection.Open()



Error message is:

An unhandled exception of type 'System.Data.Odbc.OdbcException' occurred in

system.data.dll



Additional information: System error.



Thank you for the response. Any more thoughts?

==================



"Cindy Winegarden" wrote:



Quote
Hi Joe,



First off, try the FoxPro and Visual FoxPro OLE DB data provider, available

from msdn.microsoft.com/vfoxpro/downloads/updates">msdn.microsoft.com/vfoxpro/downloads/updates . For your

connection string use:



"Provider=VFPOLEDB.1;Data Source = C:\Temp;"



That's all you need for free tables. If you still have problems, post back.



--

Cindy Winegarden MCSD, Microsoft Visual Foxpro MVP

cindy_winegarden@msn.com www.cindywinegarden.com

Blog: spaces.msn.com/members/cindywinegarden">spaces.msn.com/members/cindywinegarden



-

Re:Opening a dbf file with .NET code

I got the following to work:



Dim myConnection As New

System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data

Source=C:\TEMP;Extended Properties=dBase III")

Dim myCommand As New System.Data.OleDb.OleDbCommand("SELECT

OTHWAGE.* FROM OTHWAGE", myConnection)

myConnection.Open()

Dim myReader As System.Data.OleDb.OleDbDataReader =

myCommand.ExecuteReader()

While myReader.Read()

Debug.WriteLine(CStr(myReader.GetValue(0)))

End While





"Cindy Winegarden" wrote:



Quote
Hi Joe,



First off, try the FoxPro and Visual FoxPro OLE DB data provider, available



-

Re:Opening a dbf file with .NET code

Hi Joe,



I'm glad you found a work-around.



--

Cindy Winegarden MCSD, Microsoft Visual Foxpro MVP

cindy_winegarden@msn.com www.cindywinegarden.com

Blog: spaces.msn.com/members/cindywinegarden">spaces.msn.com/members/cindywinegarden





"genojoe" <genojoe@discussions.microsoft.com>wrote in message

Quote
I got the following to work:



Dim myConnection As New

System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data

Source=C:\TEMP;Extended Properties=dBase III")

Dim myCommand As New System.Data.OleDb.OleDbCommand("SELECT

OTHWAGE.* FROM OTHWAGE", myConnection)

myConnection.Open()

Dim myReader As System.Data.OleDb.OleDbDataReader =

myCommand.ExecuteReader()

While myReader.Read()

Debug.WriteLine(CStr(myReader.GetValue(0)))

End While





"Cindy Winegarden" wrote:



>Hi Joe,

>

>First off, try the FoxPro and Visual FoxPro OLE DB data provider,

>available







-