我试图插入像µ
为varchar字符,但它不工作,我得到它说如何将特殊字符插入到Advantage SQL数据库中?
不能Unicode字符转换为代码页字符
,因为它是医疗文件的错误消息,我不允许更改任何数据。该计划是写在vb.net,它插入CSV数据转化为优势SQL所以我尝试这个功能
Public Shared Function Convert(ByVal input As String) As String
Dim OriginalCodierung As System.Text.Encoding = System.Text.Encoding.GetEncoding("utf-8")
Dim iso8859 As System.Text.Encoding = System.Text.Encoding.GetEncoding("iso-8859-1")
Dim enc As System.Text.Encoding = System.Text.Encoding.Default
Dim OriginalBytes As Byte() = OriginalCodierung.GetBytes(input)
Dim result As Byte() = System.Text.Encoding.Convert(OriginalCodierung, iso8859, OriginalBytes)
Dim s As String = enc.GetString(result)
Return s
End Function
这在ISO8859 UTF8编码,但它并没有真正的帮助。
如何在不更改数据的情况下使用这些字符插入数据?
我不熟悉那个数据库,但在我用过的其他数据库中,'varchar'只存储单字节字符。例如在SQL Server中,您需要将'nvarchar'用于双字节字符。你的数据库是否有相应的数据类型?如果没有,那么我认为你必须将数据存储为字节而不是字符。 – jmcilhinney
优势数据库服务器只有字符https://devzone.advantagedatabase.com/dz/webhelp/Advantage8.1/server1/adt_field_types_and_specifications.htm – Sparkm4n