DroidDB® Downloading and Synchronizing FAQ
It’s in the *.db file in the application folder.
D3-b) Can DroidDB synchronize with a Microsoft Access database? What other types of databases can DroidDB synchronize to?
DroidDB can synchronize with a Microsoft Access database or any other database that can be read and written via ODBC (Level 2 API).
You must have an ODBC driver for the database installed on your desktop system. To check, select START | SETTINGS | CONTROL PANEL | ODBC 32 and select the "Drivers" tab. You must have a data source set up on the driver. To set up a data source, click the "User" or "Machine" tab and click the ADD button.
D3-c) I downloaded a table and now I get the error, "Tables not compatible for synchronization" when I try to synchronize. Why?
When synchronizing a table on the desktop to a table on the Android device, DroidDB checks to make sure the two are compatible. It performs these tests:
- The name of the table on the desktop must exactly match the name of table on the Android device.
- The table on the desktop must have one extra column. It must be the first column of the table. It must be called OID. It must be a numeric column.
- Except for the "extra" OID column on the desktop, the names of the columns and their datatypes must be the same.
See the topics "Synchronizing Tables" and "Downloading a Table from an ODBC-enabled Application on the Desktop PC" in the "DroidDB Developer and User Guide" for more details.
D3-d) When I synchronize I want to move the records from the Android device to the desktop and then remove them from the handheld. How do I do this?
There is a synchronization operator ( < - - x) that does exactly this.
D3-e) When I synchronize, Microsoft Access gives me the message, "Field can't be a zero-length string." How do I fix this?
On your desktop system, bring up Access and load in the database you are synchronizing to. Click on the 'Tables' tab and then click once on entry for the table you are synchronizing to. Then press the 'Design' button. In the 'Field Name' column, click on the name of the field. Change 'Allow Zero Length' (on the bottom of the window) from 'No' to 'Yes'.
As long as you have a SQL Server ODBC data source, you can synchronize with SQL Server. However, before you synchronize, you will need to create a primary key over the tables you are trying to synchronize to.
D3-g) When I try to synchronize, I get a message that says, "Field cannot be updated" or "You tried to assign the Null value to a variable that isn't a VARIANT datatype." What is this and how can I fix the problem?
This message is generated from the Microsoft Access ODBC driver. It occurs when a column on the desktop is an autonumber column and you changed the value of this column in a record on the handheld. If you make the column in the desktop table a regular number column, the problem will be resolved.
Use Timestamp Synchronization. To do this, add a column at the end of your desktop table called TIMESTAMP whose datatype is Date/Time. Synchronization will be significantly faster, but at a price: every time you insert or modify a record, you must set this timestamp.
D3-i) When I use FILE | DOWNLOAD to download data from an Excel spreadsheet, why is the list of tables empty?
You need to define the table in the spreadsheet. To do this, open the spreadsheet in Excel and do the following:
- Select the region containing the data
- Select INSERT | NAME | DEFINE from from the menu bar.
For more details, consult your Microsoft Excel documentation.
D3-j) I get the error "You do not have the necessary permissions to use the <<.mdb file>> object. Have your system administrator or the person who created this object establish the appropriate permissions for you." when I try to synchronize to an Access database (.MDB file). Why?
You are getting this error because the Access ODBC driver does not know where to find the database's .MDW file. Do the following:
- On your desktop, select START | SETTINGS | CONTROL PANEL | ODBC DATA SOURCES (this may be under ADMINISTRATIVE TOOLS).
- Select the "User DSN" or "Machine" tab.
- Click the "Add" button.
- Specify a "Data Source Name" (for example, "My Access Datasource")
- Select the Microsoft Access Driver and press the "Finish" button.
- In the "System Database" section, select the "Database" radio button and click the "System Database..." button
- Select your .MDW table and click "OK"
- Click "OK" to create the ODBC Datasource and close the ODBC Administrator
- Connect your handheld to your desktop and open DroidDB on the desktop
- Select FILE | SYNCHRONIZE
- Specify the name you selected in step (4) as the "Desktop Datasource"
- Press the "Close" button.
You should now be able to synchronize your tables.
D3-k) When using Excel files, why do I see the error "[Microsoft][ODBC Excel Driver]Operation must use an updateable query"?
Your Excel ODBC Data source is set up as "Read Only". Open the definition of the Data Source (using "Data Sources (ODBC)" on the control panel's administrative tools), click the "Options" button, and turn off the "Read Only" flag.