Closed xakiy closed 1 year ago
Format yang baru memang ditujukan untuk universal rdbms (tidak hanya utk mysql) sehingga delimiter backtick untuk nama table/field dihilangkan. Untuk keperluan yang dimaksud, bisa secara manual ditambah dulu backtick-nya sebelum di konversi ke sqlite, atau semisal di replace dengan python sbb:
>>>import re >>> x=re.sub("wilayah","`wilayah`","INSERT INTO wilayah (kode, nama)") >>> y=re.sub("kode","`kode`",x) >>> z=re.sub("nama","`nama`",y) >>> print(z) INSERT INTO `wilayah` (`kode`, `nama`)
Oh begitu, berarti ini emang disengaja utk alasan universal rdbms ya, baiklah bang, akan saya sesuaikan kalau begitu..
Note: karena kebiasaan malah terpaku ke tool lama, jadi solusinya adalah sudah tidak perlu konverter itu lagi 🤣
cat wilayah.sql |sqlite3 geo.db
Great thanks!
Halo bang @cahyadsn, terima kasih untuk kerja kerasnya membuat database wilayah yang keren ini.
Saya ada projek kecil membuat API wilayah di python yang saya beri nama GEOS yang menggunakan SQLite sebagai databasenya dan mengkonvert database MySQL yang abang kerjakan, karena menurut saya untuk data yang hanya read-only SQLite sudah cukup mempuni sebagai backendnya. Setelah agak lama saya tinggalkan, proyek kecil itu coba saya perbarui, tentu dengan mengupdate database sumber yang terbaru buatan abang, nah, masalah baru muncul karena format dump yang baru berbeda dengan format dump yang lama yang menggunakan backtick untuk nama tabel, dan field kolom-nya. Saya menggunakan https://github.com/dumblob/mysql2sqlite sebagai konverternya.
wilayah.sql (terbaru)
_wilayah2020.sql (lama)
Cross issue #https://github.com/xakiy/geos/issues/1
Ada solusi bang @cahyadsn?