I am creating a master database using SQLite. This single file contains a dozen tables. I want everybody in my group to have access to it (either through Python or through the SQLite command line) and I was thinking of simply putting the file in a group readable directory and calling it ‘master.db’.
Now, the buzz word ‘ODBC’ comes to mind.
I remember my old Windows days (thank God they’re gone), when I could “register” and Excel spreadsheet into my “data sources”; it would be made visible from within any application.
Can I take advantage of this in the Linux world? Does this make any sense?
Many thanks.
If it’s only small numbers of people who access you db then you should be ok. However, SQlite sucks at large numbers of concurrent accesses – I switched over from sqlite to mysql when I had lots of concurrent access because the db kept getting locked.
For many concurrent accesses, you need something in between it that takes the brunt of the requests, like a (small) webserver or even a python program that can take all those requests and can regulate the access to the sqlite db. Use an ORM like SQLAlchemy or SQLObject that can access sqlite in a threadsafe way.
As for using odbc on linux to make sqlite accessible as a data source to the linux users, while ODBC certainly works on linux, and an sqlite odbc driver exists ( http://www.ch-werner.de/sqliteodbc/ ) I don’t think you can ‘register’ your sqlite via odbc into a central list of data sources – that’s pure windows…