awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

30 repository-uri

Awesome GitHub RepositoriesPrimary Keys

Designation of properties as unique identifiers for entities.

Distinct from Entity Modeling: Distinct from general entity modeling: focuses specifically on primary key definition.

Explore 30 awesome GitHub repositories matching data & databases · Primary Keys. Refine with filters or upvote what's useful.

Awesome Primary Keys GitHub Repositories

Găsește cele mai bune repo-uri cu AI.Vom căuta cele mai potrivite repository-uri folosind AI.
  • gyoogle/tech-interview-for-developerAvatar gyoogle

    gyoogle/tech-interview-for-developer

    17,417Vezi pe GitHub↗

    This project is a comprehensive technical interview preparation resource and computer science interview guide. It serves as an educational reference for developers to study core software engineering fundamentals and common coding patterns required for employment screenings. The repository provides detailed guides and references covering data structures and algorithms, networking and security, operating systems, and web development. It specifically focuses on the implementation and complexity analysis of sorting, searching, and graph algorithms. The material encompasses a wide breadth of comp

    Provides educational content on defining primary and candidate keys for unique tuple identification in databases.

    Javaalgorithmcomputer-sciencecs
    Vezi pe GitHub↗17,417
  • dotnet/efcoreAvatar dotnet

    dotnet/efcore

    14,587Vezi pe GitHub↗

    Entity Framework Core is an object-relational mapper that enables developers to interact with database systems using strongly-typed code. It serves as a comprehensive data access framework, providing a unified interface for mapping application objects to relational and non-relational database schemas while managing the lifecycle of data operations through a central context. The project distinguishes itself through a provider-based architecture that decouples core data access logic from specific database engines, allowing for consistent interaction across diverse storage systems. It features a

    Designates unique identifiers for entities to ensure records are distinct and referenceable.

    C#aspnet-productc-sharpdatabase
    Vezi pe GitHub↗14,587
  • perspective-dev/perspectiveAvatar perspective-dev

    perspective-dev/perspective

    10,981Vezi pe GitHub↗

    Perspective is a columnar data analytics engine and high-performance visualization component powered by WebAssembly. It provides a system for analyzing and visualizing large or streaming datasets through interactive data grids and charts, utilizing a compiled binary to achieve near-native performance within the browser. The project distinguishes itself through a WebSocket-based data streaming interface and deep Apache Arrow integration, which minimize memory overhead when synchronizing tables between servers and clients. It acts as a remote query proxy capable of translating visualization con

    Designates specific columns as unique identifiers to enable in-place updates and targeted row deletions.

    C++analyticsbidata-visualization
    Vezi pe GitHub↗10,981
  • doctrine/ormAvatar doctrine

    doctrine/orm

    10,172Vezi pe GitHub↗

    Doctrine ORM is a PHP object-relational mapper that connects application objects to relational database tables. It uses the data mapper and identity map patterns to decouple the in-memory object model from the database schema, allowing developers to manage data persistence without writing manual SQL. The project features a dedicated object-oriented query language and programmatic builder for retrieving data based on entities rather than tables. It implements a unit-of-work system to track object changes during a request and synchronize them via atomic transactions. The capability surface inc

    Ships a system to designate object properties as unique identifiers and configure generation strategies like auto-increment.

    PHPhacktoberfest
    Vezi pe GitHub↗10,172
  • thinkgem/jeesiteAvatar thinkgem

    thinkgem/jeesite

    8,044Vezi pe GitHub↗

    Jeesite is a full-stack low-code development framework designed for building enterprise administrative portals using Spring Boot, MyBatis, and Vue. It functions as a comprehensive platform for creating administrative dashboards with integrated role-based access control and organizational data permission systems. The framework distinguishes itself through a combination of automated CRUD code generation and an integrated RAG platform that connects large language models to enterprise data via vector stores. It further incorporates a BPMN-based workflow engine to automate complex business process

    Supports the definition of unique identifiers using either single fields or composite primary keys.

    Vue
    Vezi pe GitHub↗8,044
  • twitter-archive/snowflakeAvatar twitter-archive

    twitter-archive/snowflake

    7,775Vezi pe GitHub↗

    Snowflake is a distributed unique ID generation service designed to produce non-colliding, time-ordered identification numbers at high scale. It functions as a scalable ID issuer that creates distinct entity identifiers across multiple server nodes to avoid coordination bottlenecks. The system utilizes stateless identifier coordination, calculating unique IDs through a deterministic mathematical formula rather than relying on a central database to track the last issued number. This approach allows it to generate identifiers for distributed database primary keys and high-scale transaction trac

    Generates non-repeating, time-ordered identifiers to serve as primary keys for records in distributed databases.

    Scala
    Vezi pe GitHub↗7,775
  • abel533/mapperAvatar abel533

    abel533/Mapper

    7,370Vezi pe GitHub↗

    Mapper is a MyBatis-specific library that provides annotation-driven object-relational mapping, enabling single-table CRUD operations without writing SQL or XML. It uses Java reflection and field-level annotations to map entity fields to database columns, configure primary key generation strategies, and generate mapper interfaces and model classes from database schemas. The library distinguishes itself through several practical capabilities. It includes a safe operation guard that blocks delete and update calls lacking query conditions, preventing accidental full-table modifications. Its exam

    Provides annotation-based primary key generation strategy configuration on entity fields.

    Javamappermybatismybatis-plugin
    Vezi pe GitHub↗7,370
  • vincit/objection.jsAvatar Vincit

    Vincit/objection.js

    7,343Vezi pe GitHub↗

    Objection.js is an object-relational mapper for Node.js that maps SQL database tables to classes and rows to model instances. It functions as a high-level abstraction layer built on top of the Knex.js query builder to provide structured model definitions and relational data mapping. The project distinguishes itself through its ability to manage complex object graphs, allowing for the persistence and eager-loading of deeply nested related data in single operations. It incorporates a data integrity layer that uses JSON schema validation to verify model instances before they are persisted to the

    Identifies unique rows using either a single column or multiple columns to support various schema designs.

    JavaScript
    Vezi pe GitHub↗7,343
  • elixir-ecto/ectoAvatar elixir-ecto

    elixir-ecto/ecto

    6,471Vezi pe GitHub↗

    Ecto is an Elixir database toolkit that maps database rows to Elixir structs and validates data changes through changesets before persistence. It provides a language-integrated query syntax for composing database queries, building them incrementally and securely with compile-time expansion into safe SQL. The toolkit connects to multiple database backends including PostgreSQL, MySQL, MSSQL, SQLite3, ClickHouse, and ETS through a pluggable adapter interface. It supports eager and lazy preloading of associated records to eliminate N+1 query problems, and can store nested data structures as embed

    Looks up single database rows using their unique identifier fields.

    Elixir
    Vezi pe GitHub↗6,471
  • greptimeteam/greptimedbAvatar GreptimeTeam

    GreptimeTeam/greptimedb

    5,968Vezi pe GitHub↗

    GreptimeDB is a distributed, open-source time-series database built for unified observability. It stores and queries metrics, logs, and traces together in a single columnar engine, supporting both SQL and PromQL for analysis. The database is designed as a Kubernetes-native operator with a decoupled compute and storage architecture, enabling horizontal scaling and multi-region deployment. What distinguishes GreptimeDB is its role as a multi-protocol ingestion gateway, accepting data through OpenTelemetry, Prometheus Remote Write, InfluxDB, Loki, Elasticsearch, Kafka, and MQTT protocols without

    Selects columns that order data on disk and identify time series for deduplication and efficient scans.

    Rustanalyticscloud-nativedatabase
    Vezi pe GitHub↗5,968
  • codeigniter4/codeigniter4Avatar codeigniter4

    codeigniter4/CodeIgniter4

    5,924Vezi pe GitHub↗

    CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools

    Provides a model method to fetch rows by primary key, returning results in the configured format.

    PHPcodeignitercodeigniter4framework-php
    Vezi pe GitHub↗5,924
  • go-pg/pgAvatar go-pg

    go-pg/pg

    5,785Vezi pe GitHub↗

    pg is a PostgreSQL object-relational mapper (ORM) for Go that maps Go structs to database tables and provides a fluent query builder for constructing SQL statements programmatically. At its core, it automatically generates CREATE TABLE statements from Go struct definitions using struct tags and naming conventions, and builds queries through method chaining with placeholder-based parameter binding to prevent SQL injection. The library distinguishes itself through relation-aware join generation that automatically constructs JOIN clauses for has-one, has-many, many-to-many, and polymorphic assoc

    Retrieves single database rows by primary key value, populating Go structs.

    Go
    Vezi pe GitHub↗5,785
  • dylang/shortidAvatar dylang

    dylang/shortid

    5,715Vezi pe GitHub↗

    shortid is a library for creating compact, non-sequential strings used as unique identifiers for database records and public URLs. It functions as a URL-friendly identifier utility designed to produce short alphanumeric strings. The project allows for the use of a custom alphabet to control the visual appearance of identifiers and avoid ambiguity. This custom character set mapping ensures that generated keys meet specific formatting or branding requirements. The system includes capabilities for non-sequential key generation to prevent resource enumeration, as well as tools to validate whethe

    Generates short and unique keys for MongoDB or Redis records to replace predictable default identifiers.

    JavaScript
    Vezi pe GitHub↗5,715
  • baidu/uid-generatorAvatar baidu

    baidu/uid-generator

    5,572Vezi pe GitHub↗

    Acest proiect este un generator de ID-uri unice distribuit, conceput pentru a produce identificatori unici globali și sortabili pe 64 de biți pe mai multe noduri. Implementează un algoritm compatibil cu Snowflake care previne coliziunile prin combinarea timestamp-urilor, identificatorilor de worker și numerelor de secvență într-un singur întreg. Sistemul include un orchestrator de ID-uri de worker pentru a aloca și menține identități unice de mașină în timpul pornirii și migrării instanței folosind strategii bazate pe baze de date. Pentru a crește throughput-ul cererilor și a reduce latența, utilizează un strat de caching de tip ring-buffer care pre-generează identificatori și folosește un mecanism de reumplere bazat pe praguri. Software-ul oferă capabilități pentru gestionarea cheilor de baze de date distribuite, coordonarea nodurilor de sistem și configurarea distribuției biților pentru a echilibra nevoile de concurență față de durata de viață a sistemului. Include, de asemenea, utilitare pentru parsarea identificatorilor generați înapoi în componentele lor originale.

    Generates time-ordered unique identifiers specifically designed for use as primary keys in distributed databases.

    Java
    Vezi pe GitHub↗5,572
  • tortoise/tortoise-ormAvatar tortoise

    tortoise/tortoise-orm

    5,582Vezi pe GitHub↗

    Tortoise ORM is an asynchronous object-relational mapper for Python that mirrors Django's model and queryset API while running on asyncio. It defines database tables as Python classes with typed fields and supports foreign key, many-to-many, and one-to-one relations, providing a chainable query API for filtering, annotating, grouping, and prefetching related objects without blocking the event loop. The ORM includes a built-in migration engine that detects model changes, generates migration files, and applies or reverts schema changes through a command-line tool. It connects to PostgreSQL, MyS

    Provides automatic primary key generation and configuration for ORM models.

    Pythonasyncasynciomysql
    Vezi pe GitHub↗5,582
  • mybatis/generatorAvatar mybatis

    mybatis/generator

    5,317Vezi pe GitHub↗

    MyBatis Generator este un instrument care inspectează tabelele bazei de date pentru a produce automat obiecte model, interfețe mapper și fișiere de configurare SQL. Funcționează ca un mapper de schemă de bază de date și generator de operațiuni CRUD, traducând coloanele bazei de date relaționale în clase și înregistrări specifice limbajului. Proiectul este un generator de cod extensibil care permite personalizarea fișierelor de ieșire printr-un mecanism de plugin-uri. Acest framework permite adăugarea unei logici de business specifice sau modificarea procesului de generare pentru a produce fișiere de ieșire adaptate. Generatorul acoperă o gamă largă de capabilități, inclusiv implementarea interogărilor dinamice, crearea de modele imuabile și automatizarea operațiunilor standard de creare, citire, actualizare și ștergere. Suportă maparea schemei bazei de date cu chei primare virtuale și poate genera cod pentru mai multe limbaje, inclusiv Kotlin. Procesul de generare poate fi executat prin instrumente CLI, apeluri directe de funcții sau ca un plugin de build tool integrat în pipeline-urile de integrare continuă.

    Assigns primary key behavior to columns via configuration when the underlying database lacks formal primary key constraints.

    Javacode-generatorjava-8kotlin
    Vezi pe GitHub↗5,317
  • segmentio/ksuidAvatar segmentio

    segmentio/ksuid

    5,260Vezi pe GitHub↗

    ksuid este o implementare în Go a identificatorilor unici k-sortabili. Oferă un sistem pentru generarea de identificatori unici globali care mențin o ordine cronologică naturală bazată pe timestamp-ul lor de generare. Proiectul permite crearea de chei unice în sisteme distribuite fără un coordonator central. Acești identificatori sunt concepuți pentru a fi utilizați ca chei primare în baze de date pentru a menține performanța indexului și eficiența inserării. Biblioteca include capabilități pentru serializarea și parsarea identificatorilor, permițând conversia între formatele binar, text și SQL. Oferă, de asemenea, instrumente de linie de comandă pentru generarea și decodarea identificatorilor fără a necesita cod de aplicație.

    Optimizes SQL database performance by using time-ordered identifiers as primary keys.

    Gocoordinationgogolang
    Vezi pe GitHub↗5,260
  • oklog/ulidAvatar oklog

    oklog/ulid

    5,040Vezi pe GitHub↗

    Acest proiect este o implementare a standardului ULID în limbajul de programare Go. Oferă instrumente pentru generarea de identificatori unici universal, sortabili lexicografic, care combină timestamp-uri în milisecunde cu date aleatorii. Biblioteca asigură că identificatorii mențin ordinea cronologică prin sortare alfabetică. Include un generator monoton pentru a garanta că mai mulți identificatori creați în aceeași milisecundă sunt produși într-o secvență strict crescătoare. Proiectul acoperă generarea de identificatori unici și optimizarea cheilor primare în baze de date. De asemenea, oferă o interfață de linie de comandă pentru generarea de noi identificatori și extragerea informațiilor de timestamp din șirurile de identitate existente.

    Provides time-ordered unique identifiers designed to optimize indexing and reduce fragmentation in database primary keys.

    Go
    Vezi pe GitHub↗5,040
  • uptrace/bunAvatar uptrace

    uptrace/bun

    4,867Vezi pe GitHub↗

    Bun este un ORM (Object Relational Mapper) type-safe pentru Go care prioritizează construcția interogărilor SQL-first și maparea rezultatelor. Funcționează ca un constructor de interogări SQL programabil, un manager de conexiuni la baza de date și un instrument pentru maparea tabelelor bazei de date la structuri Go. Proiectul se distinge printr-un sistem de suport SQL multi-dialect, permițând unui singur codebase să interacționeze cu diferite motoare de baze de date printr-o interfață consistentă. Include un instrument încorporat de observabilitate a bazei de date pentru interceptarea interogărilor, tracing distribuit și logare, precum și un instrument de migrare a schemei pentru versionarea modificărilor structurale. Biblioteca acoperă o gamă largă de operațiuni cu date, inclusiv procesarea în masă, upsert-uri, soft deletes și gestionarea datelor relaționale, cum ar fi asocierile polimorfice. Oferă capabilități pentru analize SQL avansate folosind expresii de tabel comune (CTE) și funcții de fereastră, alături de gestionarea tranzacțiilor atomice și pooling-ul conexiunilor. Gestionarea schemei este suportată printr-o interfață de linie de comandă pentru aplicarea scripturilor de migrare versionate.

    Automatically generates WHERE clauses to retrieve rows based on model primary keys.

    Godatabasegogolang
    Vezi pe GitHub↗4,867
  • dotnetcore/freesqlAvatar dotnetcore

    dotnetcore/FreeSql

    4,388Vezi pe GitHub↗

    FreeSql este un mapper obiect-relațional (ORM) .NET și un strat de acces la date care traduce codul orientat pe obiecte în SQL pentru mai mulți furnizori de baze de date relaționale. Funcționează ca un builder fluent de query-uri SQL și sincronizator de schemă de bază de date, permițând dezvoltatorilor să alinieze structurile tabelelor și indicilor bazei de date cu definițiile claselor de entități. Framework-ul este optimizat special pentru .NET Native AOT pentru a asigura amprente de memorie reduse și timpi de pornire mai rapizi. Include un manager de trafic al bazei de date pentru a distribui load-ul prin read-write splitting, sharding dinamic al tabelelor și izolare a datelor bazată pe chiriași (tenant). Capabilitățile largi includ ingestia de date de înaltă performanță folosind mecanisme de bulk copy specifice furnizorului, interogare avansată cu funcții de fereastră și CTE-uri recursive, și monitorizare bazată pe AOP pentru auditarea modificărilor de date. Sistemul oferă, de asemenea, instrumente de gestionare a schemei pentru migrări automate și utilitare de dezvoltare pentru generarea claselor de entități din metadatele bazei de date.

    Specifies unique identifiers for records, supporting composite keys and automatic ID generation.

    C#accessclickhousecodefirst
    Vezi pe GitHub↗4,388
Înapoi12Înainte
  1. Home
  2. Data & Databases
  3. Entity Modeling
  4. Primary Keys

Explorează sub-etichetele

  • Annotation-Based Key StrategiesSets custom annotations on entity fields to define how primary keys are generated, replacing complex JPA configurations. **Distinct from Primary Keys:** Distinct from Primary Keys: focuses on configuring generation strategies via annotations, not just designating properties as identifiers.
  • Automatic Primary Key InjectionAutomatic generation and insertion of unique primary keys during write operations to ensure shard integrity. **Distinct from Primary Keys:** Focuses on the automatic injection/population of keys during inserts, not just the definition of keys.
  • CompositeSupport for identifying unique rows using multiple columns as a combined primary key. **Distinct from Primary Keys:** Specifically addresses the use of multiple columns for a single primary key, rather than simple unique property designation.
  • Distributed Primary Key GenerationGenerating unique, time-ordered identifiers specifically for use as primary keys in distributed databases. **Distinct from Primary Keys:** Distinct from Primary Keys: focuses on the generation mechanism for distributed keys rather than the database schema definition.
  • Key Generation Strategies2 sub-tag-uriInterchangeable logic for generating primary keys including sequences and auto-increments. **Distinct from Sequential Key Generators:** Covers a variety of generation strategies, not just sequential ones.
  • Primary Key ConfigurationsDesignating a field as the primary key, with automatic generation of an integer key if none is specified. **Distinct from Primary Keys:** Distinct from Primary Keys: focuses on the configuration and automatic generation of primary keys, not just the designation of properties as unique identifiers.
  • Primary Key RemovalsOperations for removing the primary key constraint from a database table. **Distinct from Primary Keys:** Distinct from Primary Keys: focuses on removing primary key constraints, not designating or retrieving them.
  • Primary Key Retrievals1 sub-tagFetching single or multiple rows by their primary key values. **Distinct from Primary Keys:** Distinct from Primary Keys: focuses on the retrieval operation using primary keys, not the definition of primary keys.
  • Primary Key Type Migrations1 sub-tagConverting the data type of primary keys across shards during database migrations. **Distinct from Primary Keys:** Focuses on the conversion of types (e.g., int to 64-bit) during resharding, not the definition of keys.
  • Sequential Key GeneratorsSystems for automatically generating unique, sequential numbers for use as primary keys. **Distinct from Primary Keys:** Focuses on the generation mechanism of sequential values rather than just the designation of a property as a primary key
  • Short Key GeneratorsGeneration of compact identifiers specifically for use as primary keys in databases. **Distinct from Primary Keys:** Specializes in creating short, non-predictable keys rather than general primary key designation.
  • VirtualConfigurations that simulate primary key behavior for tables lacking formal constraints in the database schema. **Distinct from Primary Keys:** Distinct from Primary Keys as it focuses on virtual mapping via configuration rather than actual database constraints.