Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana saya bisa mengimpor geoDataFrame ke MySQL?

Setelah mencoba banyak hal, saya perhatikan bahwa fungsi to_sql tidak menghasilkan sintaks MySQL yang benar agar berfungsi. Juga dengan pendekatan untuk mengubah ke wkb MySQL masih tidak mengenali kolom itu sebagai geometri jika saya membiarkan teks apa adanya (lihat gambar dalam pertanyaan).

Apa yang berhasil bagi saya adalah mengubah bidang geometri menjadi string dan memperbaruinya dengan python sehingga akan terlihat seperti ini:

Setelah itu, saya melanjutkan untuk menggunakan kode di bawah ini, di mana saya mengirim kerangka data ke MySQL dan kemudian memperbarui tabel untuk mengatur kolom geometri:

regions.to_sql('pr_regions', con=conn, schema='eq_pr_db',
               if_exists='replace', index=False)

#add column type Polygon

conn.execute('''ALTER TABLE `eq_pr_db`.`pr_regions` 
                ADD COLUMN `geom` Polygon;''')

#populate new column by applying the ST_GeomFromText function to transform the string to geometry type.

conn.execute('''UPDATE `eq_pr_db`.`pr_regions`
                SET geom =  ST_GeomFromText(geometry) ;''')



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. mysql, ubah kolom, hapus kunci utama dan kenaikan otomatis

  2. MySql Inner Bergabung dengan klausa WHERE

  3. Android mendapatkan data dari tabel MySql

  4. Apa arti titik dua sebelum literal dalam pernyataan SQL?

  5. Bidang Ekstra dengan SQL MIN() &GROUP BY