Pripojenie na databázu Firebird
- ambruslaco
- Člen | 7
Dobrý deň!
Chcel by som sa opýtať, ako sa pomocou Nette 2.0 pripojím na databázu Firebird. Aký reťazec mám použiť v súbore config.neon? Pri Mysql je to
arguments: ['mysql:host=localhost;dbname=test', 'user', 'password']
V zložke Nette/Database/Drives som nenašiel driver pre Firebird – musím ho vytvoriť sám, alebo sa dá použiť niektorý existujúci?
Taktiež by som sa potreboval pripojiť na databázu na vzdialenom serveri (nie localhost). Je to možné, ak zadám namiesto kľúčového slova localhost ip adresu s portom?
Za odpoveď ďakujem!
Editoval ambruslaco (20. 9. 2011 15:31)
- smasty
- Člen | 90
Budeš potrebovať v prvom rade experimentálnu extension do PHP pre podporu
Firebird
v PDO, keďže Nette\Database
pracuje práve nad PDO.
Samozrejme, ak namiesto localhost
zadáš IP adresu serveru,
bude to fungovať.
Editoval smasty (20. 9. 2011 15:54)
- romansklenar
- Člen | 655
Používám Firebird s Doctrine 2 (taky jsem si ho musel napsat…).
Při použití PDO se dají použít tyhle tvary connection stringu (DSN):
firebird:dbname=C:\db\banco.gdb;host=localhost
firebird:dbname=localhost:test.fdb
firebird:dbname=localhost:C:\\path\\to\\database\\MyDatabase.FDB
Při použití knihovny ibase se to neřeší a v configu mám něco takového:
database:
dbname: %dbDir%/production.database.fdb
user: USERNAME
password: xxxxxx
host: localhost
driverClass: Doctrine\DBAL\Driver\Firebird\FirebirdDriver
port: 3050
Stačí to pak získat přes DI nebo Nette\Environment, přetypovat na pole a hodit to továrně na EntityManager.