five

Türkiye İl, İlçe ve Mahalle Veritabanı

收藏
github2024-11-17 更新2024-11-22 收录
下载链接:
https://github.com/mhmmdglc/turkey-city-data
下载链接
链接失效反馈
官方服务:
资源简介:
此数据集包含土耳其所有城市、地区和社区的PostgreSQL格式数据。数据库结构设计为支持城市、地区和社区之间的关系。

This dataset contains PostgreSQL-formatted data covering all cities, districts and communities in Türkiye. The database schema is designed to support the relational connections between cities, districts and communities.
创建时间:
2024-11-17
原始信息汇总

Türkiye İl, İlçe ve Mahalle Veritabanı

数据集概述

该数据集包含土耳其所有省份、区县和社区的数据,以PostgreSQL格式存储。数据库结构设计支持省份、区县和社区之间的关联关系。

表结构

数据集包含四个主要表:citydistrictneighbourhoodcountry。每个表的结构和包含的信息如下:

1. City (省份)

city表包含土耳其省份的基本信息。

  • id: (INTEGER) 省份的唯一标识符。
  • name: (TEXT) 省份的名称(例如,"İstanbul")。
  • plate_number: (INTEGER) 省份的牌照号码(例如,"34")。
  • phone_code: (INTEGER) 省份的电话区号(例如,"212")。
  • row_number: (INTEGER) 行号(用于数据排序)。

2. District (区县)

district表包含与省份关联的区县信息。区县通过外键与city表关联。

  • id: (INTEGER) 区县的唯一标识符。
  • city_id: (INTEGER) 区县所属省份的标识符(外键)。
  • name: (TEXT) 区县的名称(例如,"Kadıköy")。
  • city_name: (TEXT) 区县所属省份的名称(信息参考)。

3. Neighbourhood (社区)

neighbourhood表包含与区县关联的社区信息。社区通过外键与district表关联。

  • id: (INTEGER) 社区的唯一标识符。
  • name: (TEXT) 社区的名称(例如,"Bostancı")。
  • area_name: (TEXT) 社区的区域名称(例如,"Kadıköy")。
  • postal_code: (TEXT) 社区的邮政编码。
  • district_id: (INTEGER) 社区所属区县的标识符(外键)。

4. Country (国家)

country表包含国家信息,适用于国际项目。

  • id: (INTEGER) 国家的唯一标识符。
  • iso_code2: (TEXT) ISO 2位国家代码(例如,"TR")。
  • iso_code3: (TEXT) ISO 3位国家代码(例如,"TUR")。
  • name: (TEXT) 国家的名称(例如,"Türkiye")。
  • phone_code: (TEXT) 国家的电话区号(例如,"+90")。

Prisma 模式

如果使用Prisma创建此数据库,可以使用以下Prisma模式:

prisma model District { id Int @id cityId Int @map("city_id") // 省份ID name String @map("name") // 区县名称 cityName String @map("city_name") // 省份名称

city City @relation(fields: [cityId], references: [id]) neighbourhoods Neighbourhood[] // 一对多关系

@@index([cityId], name: "FK_District_City") @@map("district") }

model City { id Int @id name String @map("name") // 省份名称 plateNumber Int @map("plate_number") // 牌照号码 phoneCode Int @map("phone_code") // 电话区号 rowNumber Int @map("row_number") // 行号

districts District[] // 一对多关系

@@map("city") }

model Neighbourhood { id Int @id name String @map("name") // 社区名称 areaName String @map("area_name") // 区域名称 postalCode String @map("postal_code") // 邮政编码 districtId Int @map("district_id") // 区县ID

district District @relation(fields: [districtId], references: [id])

@@index([districtId], name: "FK_Neighbourhood_District") @@map("neighbourhood") }

model Country { id Int @id isoCode2 String @map("iso_code2") // ISO 2位代码 isoCode3 String @map("iso_code3") // ISO 3位代码 name String @map("name") // 国家名称 phoneCode String @map("phone_code") // 电话区号

@@map("country") }

Prisma 使用说明

  1. 将上述Prisma模式添加到prisma/schema.prisma文件中。

  2. 使用以下命令通过Prisma创建数据库表: bash npx prisma migrate dev --name init

  3. 注意:在运行turkiye_konum_verileri.sql文件中的INSERT命令之前,可以删除CREATE TABLE部分。然后,运行SQL文件以插入数据。

SQL 文件运行

  1. 克隆此仓库或下载turkiye_konum_verileri.sql文件。
  2. 使用以下命令将文件加载到PostgreSQL数据库中: bash psql -U kullanıcı_adı -d veritabani_adi -f path/to/turkiye_konum_verileri.sql
搜集汇总
数据集介绍
main_image_url
构建方式
该数据集以PostgreSQL格式构建,涵盖了土耳其的所有省份、区县和社区。数据集通过四个主要表(`city`、`district`、`neighbourhood`和`country`)来组织,每个表均包含详细的字段描述,如唯一标识符、名称、邮编等。这些表通过外键关系相互关联,确保了数据的一致性和完整性。此外,数据集还提供了Prisma模式,便于开发者使用Prisma工具进行数据库的创建和管理。
特点
此数据集的显著特点在于其结构化的数据组织和丰富的地理信息。通过外键关系,数据集实现了省份、区县和社区之间的层次关联,便于进行地理信息的查询和分析。此外,数据集还包含了电话代码、邮编等实用信息,适用于多种应用场景,如地理信息系统、地址验证等。
使用方法
使用该数据集时,用户可以通过Prisma工具导入Prisma模式,并执行相应的数据库迁移命令以创建表结构。随后,用户可以加载包含INSERT语句的SQL文件,以填充数据。对于不使用Prisma的用户,可以直接使用PostgreSQL命令行工具加载SQL文件。数据集的结构化设计使得数据查询和分析变得简单高效,适用于各种地理信息处理任务。
背景与挑战
背景概述
Türkiye İl, İlçe ve Mahalle Veritabanı,一个专注于土耳其地理信息的数据集,由PostgreSQL格式构建,涵盖了土耳其所有省份、区县和社区的详细信息。该数据集的创建旨在为地理信息系统(GIS)和相关研究提供一个全面且结构化的数据库。通过四个主要表格——`city`、`district`、`neighbourhood`和`country`,数据集不仅记录了各行政区的基本信息,还通过外键关系建立了层级结构,便于数据间的关联分析。这一数据集的开发,对于土耳其地理信息的数字化和标准化具有重要意义,为后续的地理研究、城市规划和公共服务提供了坚实的基础。
当前挑战
尽管Türkiye İl, İlçe ve Mahalle Veritabanı在地理信息领域提供了宝贵的资源,但其构建和维护过程中仍面临若干挑战。首先,数据集的完整性和准确性依赖于持续的数据更新,特别是在行政区划频繁变动的背景下,确保数据的实时性是一个重大挑战。其次,数据集的结构化设计虽然便于查询和分析,但在处理大规模数据时,如何优化数据库性能以提高查询速度和响应时间,也是一个需要解决的问题。此外,数据集的国际化应用,尤其是在多语言环境下的兼容性问题,也是未来需要考虑的重要方向。
常用场景
经典使用场景
Türkiye İl, İlçe ve Mahalle Veritabanı数据集在地理信息系统(GIS)中具有广泛的应用。该数据集通过详细记录土耳其所有城市、区县和社区的结构化信息,为地理分析和空间数据管理提供了坚实的基础。例如,研究人员可以利用此数据集进行城市规划、人口分布分析和交通网络优化等研究。此外,该数据集还可用于开发基于地理位置的应用程序,如导航服务和本地化搜索功能。
实际应用
在实际应用中,Türkiye İl, İlçe ve Mahalle Veritabanı数据集被广泛用于各种行业。例如,物流和运输公司利用该数据集优化配送路线和仓库布局,从而提高运营效率。房地产行业则通过此数据集进行市场分析和客户定位,以制定更精准的销售策略。此外,政府部门和非政府组织也利用该数据集进行灾害管理和应急响应规划,确保资源分配的合理性和及时性。
衍生相关工作
基于Türkiye İl, İlçe ve Mahalle Veritabanı数据集,许多相关研究和工作得以开展。例如,有学者利用该数据集开发了城市扩张模型,预测未来城市发展趋势。同时,该数据集还促进了地理信息系统(GIS)技术的应用研究,推动了空间数据分析方法的创新。此外,基于此数据集的应用程序和工具不断涌现,如智能城市平台和区域经济分析系统,进一步扩展了其应用范围和影响力。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务