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

SqlServer数据库中文乱码问题解决方法

这个问题在网上找了很多资料都没找到真正解决问题的办法,最终去了官网,终于找到问题的答案了,整理出来做个记录。

问题描述:

项目中遇到一个问题,sqlserver中的数据是ok的,结果保存到mysql中是乱码,在确认mysql没问题的情况下开始处理sqlserver的编码。

最开始想到的是,和mysql一样,加一下中文utf-8的设置,结果找了很多都没找到,网上大部分url都是直接写ip和端口,后查的官网这么处理:

下载 JDBC 驱动程序

连接 URL 的一般形式为:

jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]
jdbc:sqlserver://192.168.128.1:1433;DatabaseName=test;useUnicode=true;characterEncoding=utf-8

其中:

  • jdbc:sqlserver://(必需)称为子协议,且为常数 。

  • serverName(可选)是要连接到的服务器的地址 。 此地址可以是 DNS 或 IP 地址,也可以是本地计算机地址 localhost 或 127.0.0.1。 如果未在连接 URL 中指定服务器名称,则必须在属性集中指定。

  • instanceName(可选)是 serverName 上要连接到的实例 。 如果未指定,则会连接到默认实例。

  • portNumber(可选)是 serverName 上要连接到的端口 。 默认值为 1433。 如果使用默认端口,则无需在 URL 中指定端口及其前面的“:”。

 备注

若要获得最佳连接性能,应在连接到指定实例时设置 portNumber。 这将避免为了确定端口号而与服务器进行往返通讯。 如果同时使用 portNumber 和 instanceName,则会优先使用 portNumber,而忽略 instanceName。

  • property(可选)是一个或多个选项连接属性 。 有关详细信息,请参阅设置连接属性。 可指定该列表中的任何属性。 属性只能用分号(“;”)分隔,且不允许重复。需留意,这个分隔符是分号;,mysql是&,这点注意一下。

出于安全考虑,应避免根据用户输入的内容创建连接 URL。 只应在 URL 中指定服务器名称和驱动程序。 对于用户名和密码值,请使用连接属性集。 有关 JDBC 应用程序安全性的详细信息,请参阅保护 JDBC 驱动程序应用程序。

连接示例

使用用户名和密码连接到本地计算机上的默认数据库:

jdbc:sqlserver://localhost;encrypt=true;user=MyUserName;password=*****;

发现这样设置后无效,又继续查看官网信息,发现还需要设置数据库的排序规则:

SQLSERVER默认安装时系统默认的排序规则是拉丁文的排序规则,但一般人在安装时没有考虑到这一点,安装时只是点取下一步,安装完成后,造成了SQL版在使用过程中出现乱码。

解决方法1:

如果是新建数据库,可以在建立数据时指定排序规则,记得选中文简体(Chinese_PRC_CS_AI_WS);如果数据库中已经有数据,则转换 编码会失败

操作步骤

1.右键数据库》属性

2.点击“选项”》修改排序方式

  根据以上操作数据库数据终于正常了,担忧有一点要说一下,如果你以前设置的是默认格式,新设置是Chinese_PRC_CS_AI_WS可能会让你之前的编码变成乱码,这点需留意一下!

 

扩展1:

sqlserver 建库指定utf-8 修改库为utf-8编码

CREATE DATABASE paas COLLATE Chinese_PRC_CI_AS
GO
ALTER DATABASE paas COLLATE Chinese_PRC_CI_AS
GO

  扩展2:

让ASP和MS SQL SERVER支持UTF-8编码存储多国语言文字

近日在ASP+MS SQL存储UTF-8编码内容的时候,出现乱码的情况,经过查询发现要使SQL SERVER支持UTF-8编码格式,必须做一些修改才可以。

1、确保ASP页面是UTF-8编码的,并在ASP页面顶部声明中使用<%@ LANGUAGE = VBScript CodePage = 65001%>进行编码声明
2、输出的HTML页面中声明字符集:<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
3、在进行URL参数传递的时候,要使用Server.URLEncode()方法进行编码
4、使用JS进行URL参数传递中文的时候,要使用escape进行编码
5、在将UTF-8编码的内容存入SQL SERVER数据库中的时候,要存储的字段必须设置为NVARCHAR类型,SQL语句要在内容前加N表示,如insert into user (name) values (N´&username&´),除id意外的字段都需要加N。

创建连接 URL - JDBC Driver for SQL Server | Microsoft Learn

https://www.zhangshengrong.com/p/ERNnqWYMa5/

相关文章:

SqlServer数据库中文乱码问题解决方法

这个问题在网上找了很多资料都没找到真正解决问题的办法&#xff0c;最终去了官网&#xff0c;终于找到问题的答案了&#xff0c;整理出来做个记录。 问题描述&#xff1a; 项目中遇到一个问题&#xff0c;sqlserver中的数据是ok的&#xff0c;结果保存到mysql中是乱码&#…...

跨域的五种最常见解决方案

在开发Web应用程序时&#xff0c;一个常见的问题是如何处理跨域请求。跨域请求是指来自不同源的请求&#xff0c;这些请求可能会受到浏览器的限制而不能被正常处理。在这篇文章中&#xff0c;我们将探讨跨域请求的常见解决方案&#xff0c;并了解每种解决方案的优缺点。 一、J…...

作为一个C++新手,我感兴趣的C++开源项目

2023年4月30日&#xff0c;周日晚上。 昨天完成了一个C项目后&#xff0c;想再开始一个C项目&#xff0c;但不知道做什么&#xff0c;于是决定看看有什么好的C开源项目。 今晚在网上逛了一圈后&#xff0c;发现了好多有趣的C开源项目。 参考文章&#xff1a; GitHub Top 10 …...

杭州云降价只是敲锣

1. 陈年旧事 大约是2015年&#xff0c;某友商宣布存储免费&#xff0c;当时我们公司如临大敌&#xff0c;我也被拽过去开会。后来我们才发现……对方的套路是&#xff1a; 文件存储原始收费是一毛钱。文档存储免费的条件是&#xff0c;需要客户当月有一次下载文件的行为才能免费…...

RabbitMQ笔记

一、MQ与RabbitMQ概述 1. MQ简述 MQ&#xff08;Message Queue&#xff09;消息队列&#xff0c;是基础数据结构中 “先进先出” 的一种数据结构&#xff0c;也是在消息的传输过程中保存消息的容器&#xff08;中间件&#xff09;&#xff0c;多用于分布式系统之间进行通信。 …...

【Latex】如何在表格中使用footnote

Latex table cell中是不支持\footnote的。 如果你在table中用\footnote&#xff0c;那么要么这个脚注根本不显示出来&#xff0c;要么就会出现计数出错等问题。总之非常麻烦。 解决策略 笔者在搜集大量资料后&#xff0c;也并没有找到一种“完美的”解决方案。我们只能用一些…...

设计师常用的素材网站有哪个推荐

即时设计资源社区聚集了许多优秀的创作者&#xff0c;分享了大量的优质资源。 目前&#xff0c;社区资源数量已达到10000&#xff0c;包含图标、插画、原型、设计作品等多个素材类别。这些优秀的设计作品降低了设计师思维的成本&#xff0c;成为设计师的宝藏材料网站。 即时设…...

jmeter常用的命令行参数有哪些?常用的jmeter命令行如何编写

目录&#xff1a;导读 引言 一、JMete执行方式 二、JMete非GUI运行优点 三、jmeter非GUI运行参数 四、jmeter非GUI运行命令 4.1非GUI基本命令格式&#xff1a; 4.2非GUI并生成html报告基本命令格式 结语 引言 你是否在使用JMeter进行负载测试时感到手忙脚乱&#xff1…...

APP渗透—查脱壳、反编译、重打包签名

APP渗透—查脱壳、反编译、重打包签名 1. 前言1.1. 其它 2. 安装工具2.1. 下载jadx工具2.1.1. 下载链接2.1.2. 执行文件 2.2. 下载apktool工具2.2.1. 下载链接2.2.2. 测试 2.3. 下载dex2jar工具2.3.1. 下载链接 3. 查壳脱壳3.1. 查壳3.1.1. 探探查壳3.1.2. 棋牌查壳 3.2. 脱壳3…...

【贪婪技术】

目录 知识框架No.1 贪婪技术一、问题引入二、基本思想三、问题实例&#xff1a;连续背包问题 No.2 最小生成树问题一、基本思想二、Prim算法1、主要思想和步骤2、算法效率 三、Kruskal算法1、主要思想和步骤 No.3 Dijkstra算法一、主要思想二、问题实例&#xff1a; No.4 哈夫曼…...

谈「效」风生 | 如何找到现有研发体系的「内耗问题」?

#第3期&#xff1a;如何找到现有研发体系的「内耗问题」&#xff1f;# 在上一期《谈到提升效能&#xff0c;我们应该如何下手&#xff1f;》我们聊到开始做研发效能的四个要点&#xff1a;评估现有流程、引入自动化工具、建立度量指标、持续改进。本期就围绕「评估现有研发体系…...

Linux第四章

文章目录 前言一、快捷键小技巧二、软件安装三、systemctl控制软件启动关闭四、软链接五、日期和时区六、ip地址和主机名七、配置linux固定ip地址八、网络请求和下载九、端口十、进程管理十一、主机状态监控十二、环境变量十三、linux文件的上传和下载十四、压缩和解压总结 前言…...

HCIA-RS实验-路由配置-静态路由缺省路由

在计算机网络中&#xff0c;路由器是实现数据包转发的重要设备。它通过查找路由表中的路由信息&#xff0c;将数据包从源地址转发到目标地址。而静态路由和缺省路由则是路由表中的两种重要信息&#xff0c;下面我们来详细了解一下它们的概念、特点和应用。 目录 简述 一、静态…...

Unity API详解——Quaternion类

Quaternion类又称四元数&#xff0c;由x、y、z和w这4个分量组成&#xff0c;属于struct类型。在Unity中&#xff0c;用Quaternion来存储和表示对象的旋转角度。Quaternion的变换比较复杂&#xff0c;对于GameObject一般的旋转及移动&#xff0c;可以用Transform中的相关方法实现…...

8个免费的PNG素材网站推荐

很多设计小白都不知道什么是PNG。事实上&#xff0c;PNG是一种支持透明度的图像格式。当你想在设计中将图像与背景或文本混合时&#xff0c;它就会派上用场。 如果你没有时间为你正在处理的设计创建透明的PNG图像&#xff0c;你也可以使用我收集的PNG素材网站&#xff0c;以便…...

ChatGPT技术原理 第二章:自然语言处理基础

目录 2.1 语言模型 2.3 词嵌入 2.4 注意力机制 2.5 生成式模型 2.1 语言模型...

国民技术N32G430开发笔记(8)- 内部Flash的读写操作

N32G430 内部Flash的读写操作 1、主存储区最大为 64KB&#xff0c;也称作主闪存存储器&#xff0c;包含 32 个 Page&#xff0c;用于用户程序的存放和运行&#xff0c;以及数 据存储。 每一页的大小为2K字节 2、IAP 升级我们将64K的flash分区如下&#xff1a; Boot 0x800000…...

JVM 基本知识

目录 前言 一、JVM 内存区域划分 1.1 程序计数器 1.2 栈 1.3 堆 1.4 方法区 二、 JVM 类加载机制 2.1 类加载需要经过的几个步骤 2.1.1 Loading - 加载 2.1.2 Linking - 连接 2.1.3 initialization&#xff08;初始化&#xff09; 小结 经典面试题 三、JVM 垃圾…...

【源码解析】流控框架Sentinel源码解析

Sentinel简介 Sentinel是阿里开源的一款面向分布式、多语言异构化服务架构的流量治理组件。 主要以流量为切入点&#xff0c;从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 核心概念 资源 资源…...

redis面试重点------源于黑马

缓存问题三兄弟 是因为不同的原因让请求全部打到了数据库而造成的问题 什么是缓存穿透&#xff1f; 缓存穿透是指查询一个数据&#xff0c;在redis和MySQL中都不存在。也就是查询一个数据不存在的数据&#xff0c;导致每次请求都会到达数据库&#xff0c;给数据造成很大的压力…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

《C++ 模板》

目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板&#xff0c;就像一个模具&#xff0c;里面可以将不同类型的材料做成一个形状&#xff0c;其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式&#xff1a;templa…...

R语言速释制剂QBD解决方案之三

本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...

C++.OpenGL (20/64)混合(Blending)

混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...

论文阅读:Matting by Generation

今天介绍一篇关于 matting 抠图的文章&#xff0c;抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法&#xff0c;已经有很多的工作和这个任务相关。这两年 diffusion 模型很火&#xff0c;大家又开始用 diffusion 模型做各种 CV 任务了&am…...

密码学基础——SM4算法

博客主页&#xff1a;christine-rr-CSDN博客 ​​​​专栏主页&#xff1a;密码学 &#x1f4cc; 【今日更新】&#x1f4cc; 对称密码算法——SM4 目录 一、国密SM系列算法概述 二、SM4算法 2.1算法背景 2.2算法特点 2.3 基本部件 2.3.1 S盒 2.3.2 非线性变换 ​编辑…...

从零手写Java版本的LSM Tree (一):LSM Tree 概述

&#x1f525; 推荐一个高质量的Java LSM Tree开源项目&#xff01; https://github.com/brianxiadong/java-lsm-tree java-lsm-tree 是一个从零实现的Log-Structured Merge Tree&#xff0c;专为高并发写入场景设计。 核心亮点&#xff1a; ⚡ 极致性能&#xff1a;写入速度超…...

【Java多线程从青铜到王者】单例设计模式(八)

wait和sleep的区别 我们的wait也是提供了一个还有超时时间的版本&#xff0c;sleep也是可以指定时间的&#xff0c;也就是说时间一到就会解除阻塞&#xff0c;继续执行 wait和sleep都能被提前唤醒(虽然时间还没有到也可以提前唤醒)&#xff0c;wait能被notify提前唤醒&#xf…...

Python爬虫(四):PyQuery 框架

PyQuery 框架详解与对比 BeautifulSoup 第一部分&#xff1a;PyQuery 框架介绍 1. PyQuery 是什么&#xff1f; PyQuery 是一个 Python 的 HTML/XML 解析库&#xff0c;它采用了 jQuery 的语法风格&#xff0c;让开发者能够用类似前端 jQuery 的方式处理文档解析。它的核心特…...

河北对口计算机高考MySQL笔记(完结版)(2026高考)持续更新~~~~

MySQL 基础概念 数据&#xff08;Data&#xff09;&#xff1a;文本&#xff0c;数字&#xff0c;图片&#xff0c;视频&#xff0c;音频等多种表现形式&#xff0c;能够被计算机存储和处理。 **数据库&#xff08;Data Base—简称DB&#xff09;&#xff1a;**存储数据的仓库…...