Hi Michal, >From what I know, SQLite and MySQL have the json_array() function which can be used to store arrays. https://www.sqlite.org/json1.html#jarray https://dev.mysql.com/doc/refman/8.0/en/json-creation-functions.html#function_json-array Meanwhile, Oracle Database stores JSON as a VARCHAR with IS JSON constraint, and arrays are a valid JSON value. https://docs.oracle.com/en/database/oracle/oracle-database/18/adjsn/overview-of-storage-and-management-of-JSON-data.html
About HStore, yes, it's not widely used but it's basically just a flat (not nested) JSON. As to why I want to port those field types, to be honest, I don't really think it's necessary, but they're nice to have. However, the idea <https://code.djangoproject.com/wiki/SummerOfCode2019#AddCross-DBJSONFieldetc> listed on Django's GSoC 2019 page says that those fields would be desirable. Those two fields would not be my main priority, and I guess maybe their implementations could be optional. On Tuesday, 2 April 2019 19:26:28 UTC+7, Michal Petrucha wrote: > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA512 > > On Tue, Apr 02, 2019 at 04:41:36AM -0700, Sage M.A. wrote: > > Hello, everyone! My name is Sage. I'm a 19-year-old computer science > > student from Indonesia. I'm planning to join the Google Summer of Code > > (GSoC) this year, and I want to contribute to Django. I have written a > > draft for my proposal in this gist > > <https://gist.github.com/laymonage/b53a1acbbab36b77776cd526b48fd2a5>. I > > have submitted two small patches for Django, and I hope to contribute > more > > in the future. Feedbacks are much appreciated, thanks! > > Hi Sage, > > I'm curious about your intention to implement ArrayField and > HStoreField for other databases – you don't really go into any detail > about those. Are those types even supported by other SQL databases > than Postgres? I can't find any hstore or array type for mysql, for > instance, let alone sqlite, and it's been my understanding that these > types are pretty specific to Postgres. > > Could you explain in more detail why and how you want to port those > field types? > > Michal > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1 > > iQIcBAEBCgAGBQJco09GAAoJEHA7T/IPM/klB6oP/2I1TaEFG/SzRh5ArjTEzH60 > Nd46at1133iJEL/QEz1SzFFkoXT7uRe+71aJroW8NE4KUEXN4giOO/jjhAYB74cv > Rzxay45r03g7Io+labwe0ZBIMhfhKRbk+8W4QVyHY8yfZklazwiswRy/3zJENoA4 > GqML3yQ/0oq72pQtHHbhALp5FCcE5kILadCoYMqJ3BrqQEt5aWi3oQWoIYBCqkXF > zV3aM8cH4xsLVHG28646Eu10o5vsf06poYxOpQpF7OwfMy0k2mAjQyfVCeZ6qJzX > 2aQpimgjiICBD21Asme4kBUEBmxdGiAiz15zQlnZBW+JeXzQsCFqUf+/T6PqTeyU > 0uiX4O8/LhW+4PRG/aXLszcgqsDGOwFk3OstcrI3d+BlJ39ZCM0Kv7Y6L8H5DYKm > g9IfMeqD2c+/QECG3tEMhtJwhrvMsxod3Upq+6DhtK3G7xxemlRHjEvOIr/EmV8X > I9HRAU5ZmbE1piwZx45oTOD9ZCI2HsQtHuJ6jVsF2mwgdL3FdRGrLqCb2TPV/61x > 0P1ehjukYU5fBcdua/2sgD1nRjzQBw54yhlwaTiUoL82JmLoW8tzKCG6mycMfbtY > TfXG9wP7Ig+mWYcRdINoM83NSaVQG+Fi98KxJoW/3BFpk3mz4QGrMBLFbs6P3ANc > 9+IFrRA/wvJW2+jjBtqo > =8GaE > -----END PGP SIGNATURE----- > -- You received this message because you are subscribed to the Google Groups "Django developers (Contributions to Django itself)" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/django-developers. To view this discussion on the web visit https://groups.google.com/d/msgid/django-developers/011a381d-4cfd-4c15-953c-0aff65daf987%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
