当前位置: 首页 > news >正文

【arcmap中shp图层数据导入到postgresql数据库中,中文出现乱码,怎么办?】

项目场景:

arcmap中shp矢量图层数据导入到postgresql数据库或者是其他数据库中,中文字段出现乱码,怎么办?
当我从arcmap中导出shp矢量数据为csv属性表文件时,想要导入数据库,会出现乱码报错,无法导入。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
使用记事本打开,发现csv文件的编码格式并不是utf-8,而是ANSI。可以使用nodepad++等文本编辑工具将编码转化为utf-8,再进行导入,就可以导入成功了。
在这里插入图片描述
在这里插入图片描述


问题描述

如果已经在postgresql数据库中,乱码的信息已经导入到库表汇总了。类似于出现以下乱码的中文:

乱码中文:寰掗獓銆侀┈棰婃渤姘?
实际上是:徒骇、马颊河水系乱码中文:娣渤骞叉祦姘寸郴
实际上是:淮河干流水系乱码中文:婕冲崼鍗楄繍娌虫按绯?
乱码中文:濠曞啿宕奸崡妤勭箥濞岃櫕鎸夌化?
实际上是:漳卫南运河水系乱码中文:榛勬渤骞叉祦姘寸郴
实际上是:黄河干流水系

解决方案:

可以使用sql语句进行正确中文的验证:

SELECT convert_from(CONVERT('寰掗獓銆侀┈棰婃渤'::bytea,'UTF-8', 'GBK'),'UTF-8'  -- 目标编码(确保与终端显示编码一致)
) AS decoded_text;

注意:navicat无法解析和展示特殊的字段。并且这种sql语句的方式只适合简单的查看和验证。
在这里插入图片描述

如果想要全部更新成正确的中文名称,那么可以使用转化为对的编码格式utf-8之后,再进行导入。然后结合sql语句进行数据更新。

UPDATE model_engineering_spatial_rivl AS target
SET rvnm = source.rvnm,rsnm = source.rsnm
FROM (SELECT distinct rvcd, rvnm, rsnmFROM "aaaa河道名称"
) AS source
WHERE target.engr_id = 137 AND target.rvcd = source.rvcd;
http://www.lryc.cn/news/611814.html

相关文章:

  • 使用 Maxwell 和 RabbitMQ 监控 Mysql Flowable 表变更
  • 医学影像PACS系统的设计与实现,PACS系统源码
  • LMS/NLMS最小均值算法:双麦克风降噪
  • python中的推导式
  • YOLOv5 上使用 **labelImg** 标注并训练自己的数据集
  • PyTorch生成式人工智能——Hugging Face环境配置与应用详解
  • 【32】C++实战篇—— m行n列的坐标点,求每行相邻点X差值dX,每列相邻点y差值dY,并以矩阵形式左端对齐
  • 远程连接----ubuntu ,rocky 等Linux系统,WindTerm_2.7.0
  • Spring选择哪种方式代理?
  • 阿里云DMS Data Copilot——高效智能的数据助手,助力企业实现数据驱动的未来
  • 深入理解 Maven POM 文件:核心配置详解
  • Jenkinsfile各指令详解
  • Java学习第一百零九部分——Jenkins(一)
  • 基于通用优化软件GAMS的数学建模和优化分析
  • AlphaEarth模型架构梳理及借鉴哪些深度学习领域方面的思想
  • React:受控组件和非受控组件
  • WebStorm转VSCode:高效迁移指南
  • 前端开发_怎么禁止用户复制内容
  • vue3 el-dialog自定义实现拖拽、限制视口范围增加了拖拽位置持久化的功能
  • 【前端开发】三. JS运算符
  • 2.6 sync
  • vue3 find 数组查找方法
  • JSON巴巴 - 专业JSON格式化工具:让任何JSON都能完美格式化
  • Excel将整列值转换为字符串
  • Git 乱码文件处理全流程指南
  • 通过最严时序标准,再登产业图谱榜首,TDengine 时序数据库在可信数据库大会荣获双荣誉
  • Apache Flink 的详细介绍
  • 时序数据库的发展现状与未来趋势
  • Excel单元格设置下拉框、选项背景
  • 【OSCP】- Monitoring 靶场学习(Proving Grounds Play)