SQLite

SQLite

Application and Data / Data Stores / Databases
Needs advice
on
IndexedDBIndexedDB
and
SQLiteSQLite
in

We hope to develop to Big PWA Hybrid application for our company (Which should include a good performance). For that, What is the best database out of IndexedDB and SQLite? What would be the best one to choose from?

READ MORE
2 upvotes·318.2K views
Needs advice
on
DjangoDjangoLaravelLaravel
and
SpringSpring

Hi all. I want to rewrite my system. I was a complete newbie 4 years ago and have developed a comprehensive business / finance web application that has been running successfully for 3 years (I am a business person and not a developer primarily although it seems I have become a developer). Front-end is written in native PHP (no framework) and jQuery with backend and where many processes run in MySQL. Hosted on Linux and also sends emails with attachments etc. The system logic is great and the business has grown and the system is creaking and needs to be modernised. I feel I would stick with MySql as DB and update / use Django / Spring or Laravel (because its php which I understand). To me, PHP feels old fashioned. I don't mind learning new things and also I want to set the system up that it can be easily migrated to Android/iOS app with SQLite. I would probably employ an experienced developer while also doing some myself. Please provide advice -- from my research it seems Spring/Java is the way to go ... not sure. Thanks

READ MORE
4 upvotes·380.6K views
Replies (4)
Recommends
on
Laravel
Vue.js

PhP might be old fashionned but Laravel is really great. I've tried nodeJs backend with express, python with flask and a little bit of serverless, and quite frankly, laravel was by far the best in my opinion. It has a lot of official packages that speeds up development (from authentification to serverless deployement), it also uses Eloquent ORM that support Mysql databases. Finally it works great with VueJs for the front end development.

READ MORE
9 upvotes·124.6K views
Full Stack Developer ·

I recommend ExpressJS or NestJS as BackEnd and React as Front-End and PostgreSQL as the database. The reason is as follows. First of all, since it is a financial system, various services will exist, and each service must be well connected and combined with each other. The organic combination of small services that work very well is the foundation of a great system. For this, it is best to use Node.js based, and I think ExpressJS or NestJS is the best choice. We recommend choosing React or Vue as the FrontEnd. PostgreSQL is currently the best performing database. These three combinations have many examples, and their superiority has been confirmed by my implementation in many projects already. If you are interested in my advice and have any questions, please feel free to contact me.

READ MORE
6 upvotes·116.3K views
View all (4)
Needs advice
on
JavaJavaJavaFXJavaFX
and
SQLiteSQLite

How to secure my offline (most of the time) Desktop Application with an annual subscription (online)? Do I block decompiling jar, hack DateTime local system date, or encrypt SQLite database? Give advice on the best possible way to achieve this.

In windows, how do I handle patching attacks modifying the registry? Is it secure to use windows registry to store secrets like the 'date of expiring' of the subscription? So that I can check the same and pop up the user to recharge themself and activate for next 1 year.

READ MORE
10 upvotes·16.2K views
Needs advice
on
MySQLMySQLPostgreSQLPostgreSQL
and
SQLiteSQLite

I need to add a DBMS to my stack, but I don't know which. I'm tempted to learn SQLite since it would be useful to me with its focus on local access without concurrency. However, doing so feels like I would be defeating the purpose of trying to expand my skill set since it seems like most enterprise applications have the opposite requirements.

To be able to apply what I learn to more projects, what should I try to learn? MySQL? PostgreSQL? Something else? Is there a comfortable middle ground between high applicability and ease of use?

READ MORE
7 upvotes·605.2K views
Replies (3)
Recommends
on
SQLite

You can easily start with SQlite. Really easy to startup since it doesn't require you to install any additional software since is self-contained. It has interfaces in almost any language and also GUIs. Start learning SQL basics and simpler data models and structures. There are many tutorials, also available in the official website. From there you will easily migrate to another database. MySQL could be next, sonce it's easier to learn at first and has more resources available. PostgreSQL is less widespread, more challenging and has the fewer resorces, but once you have some experience with MySQL is really easy to learn as well. All these technologies are really widespread and used accross the industry so you won't make a wrong decision with any of these.

READ MORE
8 upvotes·1 comment·272.5K views
Dimelo Waterson
Dimelo Waterson
·
November 10th 2020 at 4:13AM

This was a very reassuring take and I appreciated reading it. One of my biggest concerns (something that Stephen mentioned) is that SQLite might be too simplified to translate into a broader operational experience, but your suggestion of starting somewhere (and somewhere simple) was definitely helpful when deciding how to invest my time.

·
Reply
Senior DevOps Engineer at Vital Beats·

A question you might want to think about is "What kind of experience do I want to gain, by using a DBMS?". If your aim is to have experience with SQL and any related libraries and frameworks for your language of choice (python, I think?), then it kind of doesn't matter too much which you pick so much. As others have said, SQLite would offer you the ability to very easily get started, and would give you a reasonably standard (if a little basic) SQL dialect to work with.

If your aim is actually to have a bit of "operational" experience, in terms of things like what command line tools might be available as standard for the DBMS, understanding how the DBMS handles multiple databases, when to use multiple schemas vs multiple databases, some basic privilege management etc. Then I would recommend PostgreSQL. SQLite's simplicity actually avoids most of these experiences, which is not helpful to you if that is what you hope to learn. MySQL has a few "quirks" to how it manages things like multiple databases, which may lead you to making less good decisions if you tried to take your experience over to different DBMS, especially in bigger enterprise roles. PostgreSQL is kind of a happy middle ground here, with the ability to start PostgreSQL servers via docker or docker-compose making the actual day-to-day management pretty easy, while still giving you experience of the kinds of considerations I have listed above.

At Vital Beats we make use of PostgreSQL, largely because it offers us a happy balance between good management and backup of data, and good standard command line tools, which is essential for us where we are deploying our solutions within Kubernetes / docker, and so more graphical tools are not always appropriate for us. PostgreSQL is also pretty universally supported in terms of language libraries and frameworks, without having to make compromises on how we want to store and layout our data.

READ MORE
6 upvotes·1 comment·270.5K views
Dimelo Waterson
Dimelo Waterson
·
November 10th 2020 at 4:24AM

I appreciate the perspective on operational use- I couldn't quite phrase it, but that was the direction I was interested in. You hit the nail on the head when addressing SQLite's potentially too-convenient structure, which was the heart of my concern when I requested advice. To another point, I spend a lot of time on the command line in Docker instances when I'm trying to test or compare functionality, so while I didn't expect there to be deployment issues with any flavor, it's good to know that PostgreSQL is well-suited for that. I know little enough about the database field that it didn't occur to me that there were even graphical tools to use, so knowing powerful command line resources are available is a definite plus, since I would be working essentially entirely by CLI. Thanks for your perspective.

·
Reply
View all (3)