【问题标题】:MySQL spatial index with sqlalchemy?MySQL空间索引与sqlalchemy?
【发布时间】:2014-04-13 07:02:16
【问题描述】:

sqlalchemy 文档中有一个很好的例子,说明如何在 sqlalchemy 中定义和使用Geometry 列:

http://docs.sqlalchemy.org/en/rel_0_9/core/types.html#applying-sql-level-bind-result-processing

但是,文档中的任何地方都没有提到空间索引。 那么,如何使用 sqlalchemy 定义 SPATIAL INDEX

附: 关于这个已经有一个老问题了:Is there a convenient way to create spatial index with Sqlalchemy or Geoalchemy?,但是我拒绝使用两年前“处于开发早期”就被放弃的 GeoAlchemy,所以我猜这是一个不同的问题。

【问题讨论】:

    标签: python mysql sqlalchemy spatial ddl


    【解决方案1】:

    只需为其执行 DDL:

     engine.execute("CREATE SPATIAL INDEX sp_index ON geom (g)")
    

    如果您想将此命令与某个表关联,请使用DDL

    from sqlalchemy import event, DDL
    
    event.listen(some_table, 'after_create', DDL("CREATE SPATIAL INDEX sp_index ON geom (g)"))     
    

    【讨论】:

    • 当然,这就是我研究事件后所做的。这不应该是Index 的 mysql 特定选项吗?
    猜你喜欢
    • 2018-10-04
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 2012-03-01
    • 2016-04-21
    • 1970-01-01
    • 2020-09-29
    • 1970-01-01
    相关资源
    最近更新 更多