Tharos / LeanMapper

Lean Mapper is a tiny ORM based on powerful Dibi database abstraction library for PHP.
MIT License
87 stars 35 forks source link

Firebird - nazvy sloupců velkými písmeny #99

Closed JanGalek closed 6 years ago

JanGalek commented 7 years ago

Zdravím, ať se snažím jak chci, stále dostávám chybovou hlášku, že column id missing, což je pravda, jelikož firebird hází názvy sloupců na velká písmena. Šlo by to nějak obejít ?

Při nejlepší si nastavit Identifikátor (db jsem netvořil celou, jen z části a id jsou tam tak různě.

Prozatím jsem si vytvořil vlastní mapper

<?php
namespace LeanMapper;

use LeanMapper\Exception\InvalidStateException;

class FirebirdMapper extends DefaultMapper implements IMapper
{
    /*
     * @inheritdoc
     */
    public function getPrimaryKey($table)
    {
        return 'ID';
    }

    /*
     * @inheritdoc
     */
    public function getPrimaryKeyTable($table)
    {
        return 'OID$' . $table;
    }
}
janpecha commented 7 years ago

Co si vytvořit vlastní mapper, který by názvy sloupců převáděl na velká písmena a tak by napověděl LM, jaký sloupec má hledat?

JanGalek commented 7 years ago

tím jsem to vyřešil, jen jsem myslel, jestli na to není nějaká anotace :)

castamir commented 7 years ago

Ne, není. K mapování slouží mapper ;)

Každopádně používání case-sensitive databáze obecně moc nedoporučuju. Nevidím v tom žádný přínos, jen komplikace...

janpecha commented 6 years ago

Ahoj, zavírám jako vyřešené. Kdyby bylo potřeba, znovu issue otevři, nebo napiš na Slack, Gitter, nebo na fórum.