【发布时间】:2011-11-09 14:02:09
【问题描述】:
我有一个奇怪的问题。我有一个存储文件的 ASP.NET 应用程序。我有一个表 (SQL 2008 R2),我在其中存储用户上传的文件的文件信息。
有时,当我使用特殊字符存储来自国际用户的文件名时,该名称在存储在数据库表中时会被转换: 原始文件名示例:Łinename.mov 存储文件名:Linename.mov
当我检索文件名以构建路径/文件字符串时,名称不匹配并且找不到我的文件。
该表将文件名存储为 nvarchar,我认为这将允许 unicode 字符。
有什么想法吗?我宁愿存储原始文件名,而不是在服务器上重命名文件。
编辑: 我认为问题在于有问题的字符不在 UTF-8 字符集中。 我通过保持简单的生活来解决这个问题:我支持 UTF-8,如果文件在存储为 UTF-8 时被转换,那就是我的服务器文件名。
【问题讨论】:
-
什么是表架构?听起来像是编码问题?
标签: sql-server utf-8 sql-server-2008-r2 utf