Sql server 在何处修复字符编码问题:插入db之前

Sql server 在何处修复字符编码问题:插入db之前,sql-server,utf-8,character-encoding,Sql Server,Utf 8,Character Encoding,我正在使用mssql后端处理web项目,除了点击它之外,不在我的控制之下。 大量数据中充斥着垃圾字符,而不是tradmark、引号、寄存器符号和引号 我在其中呈现的html被设置为utf-8 这个编码问题是在将数据插入数据库时应该注意的吗 问题出在哪里就应该处理好。如果您试图在其他地方处理它,那么您不会修复问题,您只会尝试恢复丢失的数据 处理编码文本时,必须始终正确处理。如果在过程中的某一点对其进行了错误编码或解码,则无法在任何其他点可靠地修复它 您必须通过检查数据发生的情况,找出文本编码或解码

我正在使用mssql后端处理web项目,除了点击它之外,不在我的控制之下。 大量数据中充斥着垃圾字符,而不是tradmark、引号、寄存器符号和引号

我在其中呈现的html被设置为utf-8


这个编码问题是在将数据插入数据库时应该注意的吗

问题出在哪里就应该处理好。如果您试图在其他地方处理它,那么您不会修复问题,您只会尝试恢复丢失的数据

处理编码文本时,必须始终正确处理。如果在过程中的某一点对其进行了错误编码或解码,则无法在任何其他点可靠地修复它


您必须通过检查数据发生的情况,找出文本编码或解码错误的地方,并在那里应用修复。

问题应该在错误的地方解决。如果您试图在其他地方处理它,那么您不会修复问题,您只会尝试恢复丢失的数据

处理编码文本时,必须始终正确处理。如果在过程中的某一点对其进行了错误编码或解码,则无法在任何其他点可靠地修复它


您必须通过检查数据发生的情况,找出文本编码或解码错误的地方,并在那里应用修复。

因此,如果我理解您的意思,在插入数据库时,数据应该正确编码。在本例中,UTF-8似乎是html的选择?我知道将这些数据输入后端数据库的过程中有一些古怪的事情发生,而做这些事情的人对网络一点也不熟悉,尽管他负责设计数据库db@Ronn:数据应根据每个步骤的适当内容进行编码或解码。当将数据存储在数据库中时,它稍后将显示在网页上是无关紧要的,因此唯一需要考虑的是它应该正确地存储在数据库中。从数据库中读取时,您应该准备要在网页上显示的文本,这可能包括将其编码为utf-8,但也可能包括html编码,具体取决于它在html代码中的使用位置。ok。“应该正确地存储在数据库中”这到底是什么意思?我遇到的所有垃圾字符都是由于没有正确存储在数据库中造成的?@Ronn:这意味着您要么将文本保存为unicode(nvarchar),要么使用支持特殊字符的字符集,然后以相同格式将数据发送到数据库。如果在Management Studio中查看数据库内容时字符不正确,则无法正确保存。因此,如果我理解您的意思,在插入数据库时,数据应正确编码。在本例中,UTF-8似乎是html的选择?我知道将这些数据输入后端数据库的过程中有一些古怪的事情发生,而做这些事情的人对网络一点也不熟悉,尽管他负责设计数据库db@Ronn:数据应根据每个步骤的适当内容进行编码或解码。当将数据存储在数据库中时,它稍后将显示在网页上是无关紧要的,因此唯一需要考虑的是它应该正确地存储在数据库中。从数据库中读取时,您应该准备要在网页上显示的文本,这可能包括将其编码为utf-8,但也可能包括html编码,具体取决于它在html代码中的使用位置。ok。“应该正确地存储在数据库中”这到底是什么意思?我遇到的所有垃圾字符都是由于没有正确存储在数据库中造成的?@Ronn:这意味着您要么将文本保存为unicode(nvarchar),要么使用支持特殊字符的字符集,然后以相同格式将数据发送到数据库。如果在ManagementStudio中查看数据库内容时字符不正确,则无法正确保存。