sql >> Databáze >  >> RDS >> Mysql

Nejlepší způsob, jak vložit data JSON do MYSQL

Některé komentáře navrhovaly ponechat jej ve formátu JSON a uložit jej do textového sloupce.

Navrhoval bych, že pokud máte nad svým schématem kontrolu, měli byste je uložit do dvou NUMERIC pole – jedno pro zeměpisnou šířku a jedno pro zeměpisnou délku. V zásadě jsou to data, která máte. Skutečnost, že jste jej obdrželi pomocí JSON jako formátu kontejneru, je pro samotná data irelevantní.

Pokud jej uložíte jako zeměpisnou šířku a délku, je jednodušší se na něj dotazovat a přesto můžete JSON později znovu vytvořit, pokud chcete... ale pokud jej nakonec budete chtít načíst ne jako JSON k tomu budete mít mnohem lepší pozici. Znamená to také, že se nesvazujete s JSON proti budoucím změnám.

Osobně si myslím, že je vždy dobrý nápad mentálně oddělit vnitřní povahu dat od způsobu, jakým je náhodou přijímáte. Ukládejte data v jakémkoli formátu, který je pro dané úložiště idiomatický – takže pokud ukládáte číslo, použijte jeden z číselných datových typů. Pokud ukládáte datum a čas, použijte datetime , atd. Díky tomu neskončíte s další vrstvou mezi vámi a samotnými daty pokaždé, když k nim budete chtít přistupovat.

Tento přístup také znamená, že je mnohem pravděpodobnější, že si všimnete špatných dat brzy – pokud JSON uložíte přímo, aniž byste jej nejprve analyzovali, můžete později zjistíte, že zeměpisná šířka nebo délka není platné číslo. Sakra, fakt, že vaše ukázková data mají někdy lon a někdy má lng navrhuje, abyste přesto provedli nějaké vyčištění dat.



  1. Kontrolní seznam shody SOx pro PostgreSQL

  2. Symfony2 Doctrine spouští SQL ze souboru v CLI

  3. SQL Server VYBRAT DO @proměnná?

  4. 2 způsoby, jak vypsat všechny funkce v MySQL