Ms Access Convert Mdb To Accdb

0 views
Skip to first unread message

Sear Sommerfeldt

unread,
Aug 5, 2024, 9:02:26 AM8/5/24
to mumbblogpunwall
Inever use Microsoft Access for the work that I do, but I do know that GIS professionals would be able to open or convert the Access data into their GIS. I was sent a .accdb from somebody who needs a map created and web application and I am unfamiliar with what the steps look like from here. I am aware that .accdb are no longer able to open up in Pro (I read in a few forums), however, I feel like there has to be some way to get the data from an .accdb into Pro so I can save the layers as shapefiles or feature classes.

The short answer, not really. I assume you read Microsoft Access (.accdb) Support in ArcGIS Pro? The idea/request has been around for years, and Esri is now saying it is "In Product Plan" but they don't say when it will show up. There is also -platform-standards-and-interoperability/blog/2019/09/26/us...


If you are willing to spend some money, there are several tools that various companies put out that convert entire Access databases to other formats, like SQLite, that ArcGIS Pro can read. I am not aware of any free or open-source tools that do entire DB migration.


For File Geodatabase to Personal Geodatabase to Microsoft Access workflows and reverse, one option is to keep around an older version of ArcGIS Desktop around such as ArcGIS Desktop 10.3.1 around on an older machine or virtual machine.


(posted just after Joshua's repsonse without seeing his...)You can always export your Access Table(s) to csv format and then use a table to table in Pro to bring the csv into a fgdb table. Be careful when you do that as you may need to manually adjust the field types during that process to maintain the original type.


I need to use an .accdb database, and to do that it needs to be imported into PostgreSQL. I believe this would be a simple and straightforward problem (I expected it had been already solved), but a simple solution escapes me.


I'll add that I don't have access to Access (lol), and my solution is loosely dependant on that. If thats impossible I can go find someone with access and get them to convert each table to .csv's or something like that.


All copies of windows since windows 2000 ships with the Access Database Engine; however this will be the Jet 4.0 engine and you will need the components for the ACE (2007) engine. Happily, it is available for download from Microsoft as 2007 Office System Driver: Data Connectivity Components.


Any programming language that supports com objects will left you lift out data without having MS Access installed. You can even use windows scripting here and not even install ANY software on your windows box.


However, really, if this is one time export, then finding someone with a copy of MS Access will make this less work, but you CAN read a access file without having to install ANY software. In fact, as noted above, even a virgin install of windows would allow you to use the above windows script file which also can be run without any software having been installed on the windows box.


Another is MDB Tools is a set of open source libraries and utilities to facilitate exporting data from MS Access databases (mdb files) without using the Microsoft DLLs. Thus non Windows OSs can read the data.


The following code seems to have worked for me. It converted the tables at least. There was a form in the .accdb that didn't get copied over to the .mdb so perhaps it has properties that aren't supported in the older file format (ref: Hans' comment to the question).


We all have limits, and an Access database is no exception. For example, an Access database has a size limit of 2 GB and can't support more than 255 concurrent users. So, when it's time for your Access database to go to the next level, you can migrate to SQL Server. SQL Server (whether on-premises or in the Azure cloud) supports larger amounts of data, more concurrent users, and has greater capacity than the JET/ACE database engine. This guide gives you a smooth start to your SQL Server journey, helps preserve Access front-end solutions you created, and hopefully motivates you to use Access for future database solutions. Use the Microsoft SQL Server Migration Assistant (SSMA) to successfully migrate, follow these stages.


All Access database objects can either be in one database file, or they can be stored in two database files: a front-end database and a back-end database. This is called splitting the database and is designed to facilitate sharing in a network environment. The back-end database file must only contain tables and relationships. The front-end file must only contain all other objects, including forms, reports, queries, macros, VBA modules, and linked tables to the back-end database. When you migrate an Access database, it's similar to a split database in that SQL Server is acting as a new back-end for the data that is now located on a server.


As a result, you can still maintain the front-end Access database with linked tables to the SQL Server tables. Effectively, you can derive the benefits of rapid application development that an Access database provides, along with the scalability of SQL Server.


Increased availability With SQL Server, you can dynamically backup, either incremental or complete, the database while it's in use. Consequently, you do not have to force users to exit the database to back up data.


High performance and scalability The SQL Server database usually performs better than an Access database, especially with a large, terabyte-sized database. Also, SQL Server processes queries much faster and efficiently by processing queries in parallel, using multiple native threads within a single process to handle user requests.


Improved security Using a trusted connection, SQL Server integrates with Windows system security to provide a single integrated access to the network and the database, employing the best of both security systems. This makes it much easier to administer complex security schemes. SQL Server is the ideal storage for sensitive information such as Social Security numbers, credit card data, and addresses that are confidential.


Immediate recoverability If the operating system crashes or the power goes out, SQL Server can automatically recover the database to a consistent state in a matter of minutes and with no database administrator intervention.


Azure SQL Server In addition to the benefits of SQL Server, offers dynamic scalability with no downtime, intelligent optimization, global scalability and availability, elimination of hardware costs, and reduced administration.


Single database/elastic pools This option has its own set of resources managed through a SQL Database server. A single database is like a contained database in SQL Server. You can also add an elastic pool, which is a collection of databases with a shared set of resources managed via the SQL Database server. The most commonly used SQL Server features are available with built-in backups, patching, and recovery. But there is no guaranteed exact maintenance time and migration from SQL Server might be hard.


Managed instance This option is a collection of system and user databases with a shared set of resources. A managed instance is like an instance of the SQL Server database that is highly compatibility with SQL Server on-premises. A managed instance has built-in backups, patching, recovery, and is easy to migrate from SQL Server. However, there are a small number of SQL Server features that are not available and no guaranteed exact maintenance time.


Azure Virtual Machine This option allows you to run SQL Server inside a virtual machine in the Azure cloud. You have full control over the SQL Server engine and an easy migration path. But you need to manage your backups, patches, and recovery.


Add table indexes and primary keys Make sure each Access table has an index and a primary key. SQL Server requires all tables to have at least one index and requires a linked table to have a primary key if the table can be updated.


Check primary/foreign key relationships Make sure these relationships are based on fields with consistent data types and sizes. SQL Server does not support joined columns with different data types and sizes in foreign key constraints.


Tip Consider installing Microsoft SQL Server Express edition on your desktop which supports up to 10 GB and is a free and easier way to run through and check your migration. When you connect, use LocalDB as the database instance.


Microsoft provides Microsoft SQL Server Migration Assistant (SSMA) to make migration easier. SSMA mainly migrates tables and select queries with no parameters. Forms, reports, macros, and VBA modules are not converted. The SQL Server Metadata Explorer displays your Access database objects and SQL Server objects allowing you to review the current content of both databases. These two connections are saved in your migration file should you decide to transfer additional objects in the future.


Follow the beginning instructions in SSMA to provide basic information such as the SQL Server location, the Access database and objects to migrate, connection information, and whether you want to create linked tables.


The rowversion field helps avoid record conflicts. Access uses this rowversion field in an SQL Server linked table to determine when the record was last updated. Also, if you add the rowversion field to a query, Access uses it to re-select the row after an update operation. This improves efficiency by helping to avoid write conflict errors and record deletion scenarios that can happen when Access detects different results from the original submission, such as might occur with floating point number data types and triggers that modify columns. However, avoid using the rowversion field in forms, reports, or VBA code. For more information, see rowversion.


SSMA converts Access objects to SQL Server objects, but it doesn't copy the objects right away. SSMA provides a list of the following objects to migrate so you can decide whether you want to move them to SQL Server database:

3a8082e126
Reply all
Reply to author
Forward
0 new messages