Click here to Skip to main content
15,867,686 members
Please Sign up or sign in to vote.
1.00/5 (1 vote)
See more: , +
Hello, fellows! I hope you are doing fine these days.
Currently I am working on a project at work, whose final goal is to create an interface between 2 pieces of software (I cannot mention which software, as it is a research project). The steps are as follows:
1) There are 2 software which provide data about processes.
2) The goal is: when the data changes in the first software, the data corresponding to the same process should also change in the second software.
The data can be exported as Excel files or I can obtain it using Python (with scripts created by us). The leaders of the project proposed us to create a data base where we will store the data and compare the data from the two software in order to change it.
My question is: how it is the easiest way to do it and which database software is more suitable? Currently, I am used to work with Python, but I do not mind inserting the Excel files directly in the database.
Thank you in advance! I wish you a nice day, folks!

What I have tried:

I tried using InfluxDB, but it is time series and it does not help me much.
Posted
Updated 15-Feb-22 5:22am
v2
Comments
CHill60 15-Feb-22 9:25am    
Whatever storage method you use should just be queried/updated by both programs - store once
Richard MacCutchan 15-Feb-22 9:31am    
You can use most multi-user database systems with Python, so it is a simple matter to keep your data correctly synchronised.

If you are going to use a database, use it properly - in a format where that data can be stored a single time and queried within that DB.

Storing Excel files in your DB does not pass the second criteria and very often fails the first as well.

So use either SQL Server or MySql (as both are multiuser DB systems) and design yoru tables so that the data can be organised well for use by both apps.

Even Python can connect to either pretty simply, and it's a lot easier than faffing with Excel sheets!

But even then, if you need "real time" updates between the two apps, I'd probably use Sockets to connect the two directly and notify each other that data has changed instead of regular queries to see if there are changes.
 
Share this answer
 
In addition to solution #1 by OriginalGriff, i'd suggest to read these:

Using SqlDependency for data change events[^]
Query Notification using SqlDependency and SqlCacheDependency[^]
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900