Read MS access database file (.mdb) in UWP - ms-access

I am working on Universal Windows Application. I want to read ms access database file, But it seems like System.Data.Oledb namespace is not available in UWP.
I don't want to use any Web Service which requires internet connectivity.
Is there any solution for reading MS Access file in UWP?
Thanks in advance.

There are no way to do it. Only one avaliable DB format is SQLite.
You can use some converter tool
By the way, soon would be available Entity Framework for SQLite databases (it is in preview now)

Related

Windows phone 8.1 app connect with a database

I'm totally new to the windows phone 8.1 app development.
I'm trying to develop a simple app with a database using visual studio 2013. It is not a silverlight app.
my app just have a text field and a button.And i have a MySQL database in a local server(WAMP).
I need to get a input from the text field and store it in the database.
First thing that I want to know is it possible to do?
If it is possible I would be very grateful if you could provide a step by step guide or a link where i can learn about this.
If it is not possible what are the other ways that I can try to store my input in a database?
Local storage
I'm guessing you're looking for a way to store structured data locally on the phone. AFAIK, MySQL is not supported on Windows Phone (MySQL is big, runs as a server, and it wouldn't be possible or practical to "install" it onto a phone). Instead what Microsoft endorses is to use SQLite. You'll first need to download the SQLite library as a Visual Studio extension. Then you'll need to install something like SQLitePCL (from NuGet) which essentially wraps the native SQLite library so that it is accessible from .NET languages. Make sure you add both references to your project. SQLite stores a database as a file that you can put in the local storage for your app.
Remote storage
I'm not sure if it's directly possible to connect to a remove MySQL server from a WP app. Usually you'd access a remote database through a webserver that exposes an API for you to use (e.g. a REST API). You can then send data to the webserver via a HTTP POST request, and then your webserver will store the data in the database. This is a big topic, and involves knowledge of server-side programming such as ASP.NET, Ruby on Rails, Django, PHP, etc. This topic is too broad for me to give you specifics on how to do this. See this answer.

Does one need Access to access Access files with odbc?

Is it necessary to have Access installed when using odbc connector to access Access files?
I have an Access file db, which is used by my application. I want to install this application on another pc, so I also need to move the file.
Will I be able to access Access file if I copy the file and have my application installed together with odbc connector? Or do I also need Access (for some dlls?) to do that?
The short answer is no.
The long answer is . . . longer.
If your app using the MDB file for storage only then all you need on the clients machine is MSDAO - Microsoft Data Access Objects.
There are different versions of DAO libs for different version of Access, you should be able to lookup which version you require for your version of access easily enough.
Later versions of MS Windows often come with DAO libs already installed.
If your app is firing up MSAccess Forms or Reports in the database then you do need to have MS Access installed
While the answer about using DAO is correct, you also have the choice of using ADO and optionally ADOX, supplied by Microsoft as part of the MDAC package. It has a smaller memory footprint than DAO and is usually faster. The same restrictions apply in that you can read and write data, create, modify, and drop tables, but not use Access forms or reports.
ADO is still supported as a COM based interface for Access and many other databases. ADOX (for table modification) is depreciated, but still works.
ADOX and DAO are both "Jet only" interfaces, meaning that they work with Microsoft Access's "Jet DB Engine", but will not work if you later change the underlying database.
The OBDC connector you mention should work well, using ADO.NET (recommended for new code) and still has the same "data only" restrictions. This interface should still work if you later want to change the database to SQL server or MySQL.

Using Vaadin with a database created in Microsoft Access

I'm trying to develop a simple web application to run on my company's internal network. I've recently taught mysef the fundamentals of Vaadin and Microsoft Access. I've gotten Vaadin to access a simple MySQL database without any problems. I've also created the real database in Access. My question is how do I get the two to work together? Is there a driver I can use to access the .accdb database itself, or is there a format I can convert to that is compatible with Vaadin but can also still be administered with Access?
Using vaadin with a database is "simply" making the right choice for the JDBC drivers.
For MS Access you can either go via the ODBC Bridge, or purchase a professional JDBC driver.
When you go the ODBC bridge way, you then have to make sure that the server java vm matches the odbc version. Either both 32 Bit or both 64 Bit.
Look here: How to connect to Access .mdb database from 64-bit Java?
In the meantime MS has provided 64 Bit ODBC drivers for MS Access too. But the platform needs to be Microsoft Windows.
Please be aware, that MS Access is a bit tricky when using in multiuser mode. If it's a real project, then you should consider migrating it to a real database.

Converter apps rejecting MS Access 2010 accdb file

I have the Bullzip MS2mySQL converter and another converter by Convert-In.com installed. I am working with a MS Access 2010 accdb file which is working fine in Access but gives errors in both converters. Both converters work fine when used with an old Access 2007 mdb file.
The Bullzip converter error is "Error 3706: Provider cannot be found. It may not be properly installed." I have an open forum topic over there but I have open topics there which are months old with no replies at all.
The Convert-In converter's error is "Unrecognized database format". Their docs specify Access 2010 support while Bullzip does not make mention of versions supported.
The Access Save As dialogue is not offering me any options other than 2010 accdb.
Does anyone have any advice on this? Client needs to continue using Access as GUI but I need to fluidly port data to mySQL for our web apps.
// EDIT
My copy of Access 2010 only offers accdb even for new files. So I tried creating a new database in accdb format with 2007 as the version and imported only the tables from the problem file. No forms or queries etc. Same errors from all converters tried.
// EDIT 2
Per HansUp's suggestion to import data into another file - I changed version to Access 2003 and mdb shows up as format and file is opened by converters!
"The Access Save As dialogue is not offering me any options other than 2010 accdb."
Sorry, I don't have Access 2010 so don't know why it won't let you save as MDB. However, since that option is unavailable, create a new MDB, then open it and import everything you want from the old ACCDB into the new MDB. Sounds like you would then be able to use your converter utilities with the MDB.
If at all possible, I would prefer to replace the native Access tables with ODBC links to their MySQL counterparts. With all the data in MySQL, you could avoid the challenge of synchronizing data between Access and MySQL.

How to use mySql DB from C# on shared hosting?

i bought a web domain with some web space. They support only mySQL DB, how do i access the my SQL DB on my asp.net application? is there is way to access it through .net base classes without installing third party drivers?
You can reference MySQL .net connector .dll which will be placed in your bin folder.
The standard Conector/Net should work. It's pure C# and communicates with MySQL over sockets. If that isnt supported you should talk to your host about how to get it working.