locked
Connecting To an Access Database RRS feed

  • Question

  • Hi,

    Been using Fox for approx 6 months now, comfortable with retrieving data from Excel spreadsheets but now have need to get data from an Access database.

    How would I connect to this? and once connection is established what function do I use to connect to a table or a query in the database.

    I know I could do something in excel and connect via msquery but something tells me theres a better method

     

    Please help

    TIA

    JFK

    Sunday, October 31, 2010 3:57 PM

Answers

  • constring = "DBQ=f:\...\yourname.mdb;Driver={Driver do Microsoft Access (*.mdb)};DriverId=25;FIL=MS Access;MaxBufferSize=2048;MaxScanRows=8"
    
    sqlHandler = SQLSTRINGCONNECT(constring)
    IF sqlhandler < 1
     AERROR(arrError)
     MESSAGEBOX(arrError(1,2))
     RETURN
    ENDIF
    
    TEXT TO sqlSelect NOSHOW ...
      SELECT ... FROM YourAccessTable ... WHERE...
    ENDTEXT
    
    IF SQLEXEC(sqlHandler,sqlselect,"MyCursor") <0
     AERROR(arrError)
     MESSAGEBOX(arrError(1,2))
     RETURN
    ENDIF
    The data from Access database are in MyCursor.

    Check also 
    http://www.connectionstrings.com/access-2007
    Systems Analyst
    • Proposed as answer by yanyee Monday, November 1, 2010 3:02 AM
    • Marked as answer by Liliane Teng Sunday, November 7, 2010 3:05 PM
    Sunday, October 31, 2010 5:05 PM

All replies

  • Take a look here UT Downloads link
    Premature optimization is the root of all evil in programming. (c) by Donald Knuth

    Naomi Nosonovsky, Sr. Programmer-Analyst

    My blog
    Sunday, October 31, 2010 4:23 PM
  • constring = "DBQ=f:\...\yourname.mdb;Driver={Driver do Microsoft Access (*.mdb)};DriverId=25;FIL=MS Access;MaxBufferSize=2048;MaxScanRows=8"
    
    sqlHandler = SQLSTRINGCONNECT(constring)
    IF sqlhandler < 1
     AERROR(arrError)
     MESSAGEBOX(arrError(1,2))
     RETURN
    ENDIF
    
    TEXT TO sqlSelect NOSHOW ...
      SELECT ... FROM YourAccessTable ... WHERE...
    ENDTEXT
    
    IF SQLEXEC(sqlHandler,sqlselect,"MyCursor") <0
     AERROR(arrError)
     MESSAGEBOX(arrError(1,2))
     RETURN
    ENDIF
    The data from Access database are in MyCursor.

    Check also 
    http://www.connectionstrings.com/access-2007
    Systems Analyst
    • Proposed as answer by yanyee Monday, November 1, 2010 3:02 AM
    • Marked as answer by Liliane Teng Sunday, November 7, 2010 3:05 PM
    Sunday, October 31, 2010 5:05 PM