#mysql #diesel #geospatial #gis #geo

diesel-mysql-spatial

适用于Diesel框架的MySQL空间数据类型扩展

3个版本

0.1.2 2022年5月17日
0.1.1 2022年5月16日
0.1.0 2022年5月16日

#1876数据库接口

MPL-2.0AGPL-3.0+

41KB
754 代码行

diesel-mysql-spatial - Diesel框架支持MySQL空间数据类型的扩展

Crates.io Documentation License

使用方法

  1. 将以下内容添加到您的Cargo.toml文件中
[dependencies]
diesel-mysql-spatial = "0.1"
  1. 阅读Crate文档

示例

假设一个MySQL表定义如下

CREATE TABLE districts (
    id         INTEGER NOT NULL PRIMARY KEY,
    center     POINT NOT NULL,
    area       POLYGON NOT NULL
);

然后Rust代码可能如下所示

use diesel_mysql_spatial::data_types::{Point, Polygon};

#[derive(Insertable, Queryable)]
#[table_name = "districts"]
struct District {
    id: i32,
    center: Point,
    area: Polygon,
}

table! {
    use diesel_mysql_spatial::sql_types::*;
    use diesel::sql_types::*;
    districts (id) {
        id -> Integer,
        center -> Point,
        area -> Polygon,
    }
}

稳定性

此Crate遵循语义版本控制,并额外承诺在低于1.0.0的版本中,不会通过仅更改补丁级别版本号引入向后不兼容的更改。

许可协议

在Mozilla公共许可证第2.0版下许可(LICENSEhttps://www.mozilla.org/en-US/MPL/2.0/)。

贡献

除非您明确声明,否则您有意提交的任何贡献,均应按上述方式许可,包括与MPL定义的二级许可证的兼容性。

依赖关系

~8MB
~224K SLoC