SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Relational Database Open-Source Projects
-
go-sql-driver/mysql
Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package (by go-sql-driver)
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
prisma-client-py
Prisma Client Python is an auto-generated and fully type-safe database client designed for ease of use
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
We've always used https://github.com/jmoiron/sqlx which is just the standard package + mapping to/from structs.
Project mention: Setting up a Database Driver, Repository and Implementation of a transaction function for your Go App | dev.to | 2024-04-22Sometimes, backend developers tend to opt for an ORM library because it provides an abstraction between your app and the database and thus there is little or no need to write raw queries and migrations which is nice. However, if you want to get better at writing queries (SQL for example), you need to learn how to build your repositories without an ORM. To open a database handle, you can either do it directly from the database driver or do it from database/sql with the driver passed into it. I will be opening the connection with database/sql together with pgx which is a driver and toolkit for PostgreSQL. Walk with me.
Project mention: Authentication system using Golang and Sveltekit - Initialization and setup | dev.to | 2023-06-02Following the completion of the series — Secure and performant full-stack authentication system using rust (actix-web) and sveltekit and Secure and performant full-stack authentication system using Python (Django) and SvelteKit — I felt I should keep the streak by building an equivalent system in PURE go with very minimal external dependencies. We won't use any fancy web framework apart from httprouter and other basic dependencies including a database driver (pq), and redis client. As usual, we'll be using SvelteKit at the front end, favouring JSDoc instead of TypeScript. The combination is ecstatic!
OK -
can we start considering binary files committed to a repo, even as data for tests, to be a huge red flag, and that the binary files themselves should instead be generated at testing time by source code that's stated as reviewable cleartext. This would make it much harder (though of course we can never really say "impossible") to embed a substantial payload in this way.
when binary files are part of a test suite, they are typically trying to illustrate some element of the program being tested, in this case a file that was incorrectly xz-encoded. Binary files like these weren't typed by hand, they will always ultimately come from something plaintext source.
Here's an example! My own SQLAlchemy repository has a few binary files in it! https://github.com/sqlalchemy/sqlalchemy/blob/main/test/bina... oh noes. Why are those files there? well in this case I just wanted to test that I can send large binary BLOBs into the database driver and I was lazy. This is actually pretty dumb, the two binary files here add 35K of useless crap to the source, and I could just as easily generate this binary data on the fly using a two liner that spits out random bytes. Anyone could see that two liner and know that it isn't embedding a malicious payload.
If I wanted to generate a poorly formed .xz file, I'd illustrate source code that generates random data, runs it through .xz, then applies "corruption" to it, like zeroing out the high bit of every byte. The process by which this occurs would be all reviewable in source code.
for what it's worth, the two pool approach is suggested here by a collaborator to github.com/mattn/go-sqlite3: https://github.com/mattn/go-sqlite3/issues/1179#issuecomment...
micronaut-data/doc-examples/r2dbc-example-java - GitHub
Project mention: Show HN: My Go SQLite driver did poorly on a benchmark, so I fixed it | news.ycombinator.com | 2023-12-14Note that Squinn is not "native go" or "go only", but the owner insists on misleading people:
https://github.com/cvilsmeier/sqinn-go/issues/8
Relational Databases related posts
- Setting up a Database Driver, Repository and Implementation of a transaction function for your Go App
- Replacing Complicated Hashmaps with SQLite
- Xz/liblzma: Bash-stage Obfuscation Explained
- The DDD Hamburger for Go
- Alembic with Async SQLAlchemy
- Imperative vs. Declarative mapping style in Domain Driven Design project
- Show HN: Sqinn-Go is a Golang library for accessing SQLite databases in pure Go
-
A note from our sponsor - SaaSHub
www.saashub.com | 25 Apr 2024
Index
What are some of the best open-source Relational Database projects? This list will help you:
Project | Stars | |
---|---|---|
1 | sqlx | 15,365 |
2 | go-sql-driver/mysql | 14,178 |
3 | Peewee | 10,795 |
4 | pgx | 9,414 |
5 | pq | 8,740 |
6 | SQLAlchemy | 8,750 |
7 | go-sqlite3 | 7,446 |
8 | PonyORM | 3,516 |
9 | GINO | 2,635 |
10 | djongo | 1,845 |
11 | go-mssqldb | 1,792 |
12 | orm | 1,754 |
13 | prisma-client-py | 1,596 |
14 | go-oci8 | 626 |
15 | godror | 503 |
16 | pyDAL | 476 |
17 | micronaut-data | 457 |
18 | Sqinn-Go | 397 |
19 | firebirdsql | 219 |
20 | homebase-react | 201 |
21 | go-adodb | 136 |
22 | gofreetds | 110 |
23 | vertica-sql-go | 60 |
Sponsored