JSON datový typ v mysql, následné podmínky

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Scorpio
Člen | 45
+
0
-

Zdravím,
řeším jednu otázku zda navrhnout databazi jako složité joinování nebo některá data do databaze uložit jako json objekt.
Dočetl jsem se že i MySQL umí s JSON datovým typem pracovat. Umí to i nějak nette? Respektive zda musím psát SQL dotazy nebo si to poradí s tou pěknou úpravou co nette umí.
Zkrátka. Pozná nette že v tomto poli je json a automaticky ho dešifruje do pole. To by mi asi stačilo.

http://mysqlserverteam.com/…g-json-data/

Jan Mikeš
Člen | 771
+
-1
-

Afaik datovy typ JSON v php neexistuje, pro PHP je to proste string. Nejsem si tedy uplne jisty, jak by nette/jina knihovna, mela poznat zda se jedna o JSON, bez toho, aby zkousela json_decode() na kazde polozce, coz jak si dokazes predstavit z hlediska vykonu je uplne mimo.

Muj nazor je tedy takovy, ze si tohle budes muset resit ciste sam.

Co se tyka jsonu v mysql, vzdy jsem resil ukladani jsonu do db jako string (kdyz jsem json v db potreboval a nebyla jina cesta, nebo se to pro konkretni reseni hodilo), pak je potreba resit json_decode pri posilani do db a json_encode (u doctrine entit to lze automatizovat). Datovy typ JSON v mysql je pro me novinka, takze nedokazu posoudit zda muzes posilat php pole, nebo musis konvertovat na json string, zde ale neni nic jednodussiho nez si to vyzkouset.

akadlec
Člen | 1326
+
0
-

Pokud používáš doctrine2, tak ta je vybavena datovým typem json_array, a pokud jej použiješ tak se ti o konverzi z/do pole postará doctrine.