Odkazy: dibi | API reference

Forum: [česky] [english]

dibi fórum

tiny ‘n’ smart
database layer

Nejste přihlášen(a)

#1 před 3 lety

oktam
Člen
Registrovaný: 20. 7. 2009
Příspěvky: 30

podpora SQLite3?

Dobry den,
podporuje dibi aj SQLite3?

 

#2 před 3 lety

romansklenar
Moderator
Registrovaný: 20. 7. 2008
Příspěvky: 780

Re: podpora SQLite3?

Na SQLite3 v dibi zatím jedině přes driver pdo (vyzkoušeno).

Jelikož je SQLite3 nativně zatím jen v PHP 5.3 a to reprezentován třídou, tak pohledem do zdrojáků zjistíte, že driver sqlite s trojkou nepůjde.

Napsat driver na trojku by ale neměl být žádný problém, je to otázka jednoho večera.

 

#3 před 2 lety

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 5548

Re: podpora SQLite3?

SQLite3 driver už je součástí distribuce, včetně minified verze.

 

#4 před 2 lety

romansklenar
Moderator
Registrovaný: 20. 7. 2008
Příspěvky: 780

Re: podpora SQLite3?

Davide dívej se častěji na Fork Queue :) http://github.com/…/sqlite3.php
Dva týdny to denně používám a zdá se to být stabilní. Je tam i reflexe na databázi. Až na pár detailů to máme skoro shodné (viz diff), tak se na to mrkni. Například tento řádek je důležitý.

PS: psal jsem to i jako comment ke commitu na githubu, ale nějak se to tam nezobrazuje

 

#5 před 2 lety

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 5548

Re: podpora SQLite3?

No neva :-) Já ho u sebe suším už od července a teprve teď na základě požadavku ho šoupl do distribuce. Tvoje vychytávky jsem přidal. Proč je ten řádek důležitý? Ono se to samo nedestruuje?

 

#6 před 2 lety

22
dibi guru
Registrovaný: 18. 1. 2010
Příspěvky: 1348

Re: podpora SQLite3?

Nevím, kde je problem, ale SQLite3 mi normalne chodi viz: http://test.czskcup.info/…/sqlite3.php
ale dibi se ne a ne pripojit Nette\Debug → throw new DibiDriverException(„PHP extension ‚sqlite‘ is not loaded.“)
což ale není pravda…
http://test.czskcup.info/

můžete na to někdo mrknout, co je špatně??

Editoval 22 (23. 1. 2010 2:36)

 

#7 před 2 lety

22
dibi guru
Registrovaný: 18. 1. 2010
Příspěvky: 1348

Re: podpora SQLite3?

tak zdá se, že problém vyřešen po upgrade na Nette 0.9.3 + dibi layer ze stejné distribuce..

Editoval 22 (23. 1. 2010 4:05)

 

#8 před 2 lety

romansklenar
Moderator
Registrovaný: 20. 7. 2008
Příspěvky: 780

Re: podpora SQLite3?

David Grudl napsal(a):

No neva :-) Já ho u sebe suším už od července a teprve teď na základě požadavku ho šoupl do distribuce. Tvoje vychytávky jsem přidal. Proč je ten řádek důležitý? Ono se to samo nedestruuje?

Asi byla špatná karma když jsem to psal, protože v určitých situacích to nejelo, pokud tam ten řádek nebyl (to byly ale metody fetch a query jinak implementované). Teď to ale funguje správně i bez něj, omlouvám se za zmatky.

Editoval romansklenar (28. 1. 2010 9:57)

 

#9 před rokem

Cifro
dibi guru
Registrovaný: 6. 2. 2007
Příspěvky: 258

Re: podpora SQLite3?

Napišem to do tohoto vlakna…

V kóde so SQLite3 driverom, mi pri tomto zapise

$tableInfo->getPrimaryKey()->getColumns()

vyhadzuje vynimku Call to a member function getColumns() on a non-object. Zdá sa že PK v SQLite3 nie je automaticky index (getPrimaryKey() vracia NULL). Keď vytvorím aj index nad PK, vynimka sa už nevyhadzuje. Ale je otravné vytvarať index, tam kde ho nepotrebujem.

Edit: Aha tak preto:

The PRIMARY KEY attribute normally creates a UNIQUE index on the column or columns that are specified as
the PRIMARY KEY. The only exception to this behavior is special INTEGER PRIMARY KEY column

Ja som mal práve ako integer ten PK.

Možno by nebolo zlé keby toto sqlite3 dibi driver vedel ošetriť (http://www.sqlite.org/…tetable.html#…)

Editoval Cifro (7. 6. 2010 23:01)


Twitter: @Cifro | GitHub: Cifro

 

#10 před rokem

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 5548

Re: podpora SQLite3?

Melo by to fungovat.

 

#11 před rokem

Cifro
dibi guru
Registrovaný: 6. 2. 2007
Příspěvky: 258

Re: podpora SQLite3?

To som si všimol, Vrtakovi v jeho ActiveMapper deme to šlo. Ja som musel vytvarať ručne unique indexy. Možno chyba v Navicate.


Twitter: @Cifro | GitHub: Cifro

 

#12 před rokem

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 5548

Re: podpora SQLite3?

Přesněji řečeno: od nynějška by to mělo fungovat, v poslední revizi.

 

#13 před rokem

pjoter
Člen
Registrovaný: 22. 8. 2009
Příspěvky: 113

Re: podpora SQLite3?

Taky mám dotaz ohledně Sqlite3. Asi se to ani moc netýká dibi i když ho používám. Při UPDATE dotazu mi to vždy vráti database is locked. Při hledání na googlu jsem narazil na dvě příčiny. První je že db už používá někdo jiný. To však vylučuje to že mě UPDATE v minulosti šel. Druhá možnost že db spadla při některém ze zapisovacích skriptů a db zůstala v módu locked. Nevěděl by někdo jak to unlocknout?

 

Zápatí