Giter VIP home page Giter VIP logo

database.tdbm's Introduction

Latest Stable Version Total Downloads Latest Unstable Version License Scrutinizer Code Quality Build Status Coverage Status

About TDBM (The DataBase Machine)

What is it?

THE DATABASE MACHINE (TDBM) is a PHP library designed to ease your access to your database.

The goal behind TDBM is to make database access as easy as possible. Users should access their objects easily, and store those objects as easily.

Design philosophy

Design choices:

  • TDBM starts with your database model and generates PHP files. TDBM understands your database model. From it, it will generate PHP classes that will help you access your database. It will generate 2 kind of classes: DAOs that are services helping you access a given table, and Beans that are classes representing a row in your database. Because PHP objects are generated, it means you get a nice autocompletion in your favorite IDE.
  • TDBM is really good at understanding the meaning and the intent behind your database model. TDBM has one of the most powerful database model analyzer that helps it map tables to objects. TDBM relies on your foreign key constraints to find joins between tables. TDBM finds these constraints itself in the database by querying the DB system. It can automatically detect pivot table to generate many to many relationships. It can also detect inheritance relationships.
  • Simplicity first. TDBM is meant to be easy to use and non obtrusive.
  • Making simple tasks should be simple. TDBM does not cover everything you can do with a complete ORM system. But it makes as simple as possible those tasks you do 80% of the time. For the remaining 20% (like performance critical requests, and so on), you can use SQL. For instance, TDBM has a unique feature that guesses jointures for you. No need to write joins anymore!
  • No configuration. There is no configuration needed for TDBM. You provide TDBM the name of your database, the user and password and you start using it.
  • Based on Doctrine DBAL. TDBM uses the Doctrine database abstraction layer for low level database access. It allows compatibility with a very wide range of databases.

Ready to dive in? Let's get started!

database.tdbm's People

Contributors

camillekoppel avatar cbalda avatar charlesc-tcm avatar fooriva avatar moufmouf avatar nguyenk avatar npeguin avatar vaidiep avatar xhuberty avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.