设想:
我正在使用Pandas.to_sql()
with 参数dtype={'COLUMN': NVARCHAR}
通过 FreeTDS 将包含带有表情符号的文本的 COLUMN 上传到 MSSQL DB。NVARCHAR 已导入from sqlalchemy.types import NVARCHAR
。COLUMN 作为 Excel 文件中的 DataFrame 提供。
问题:
奇怪的是,对于我放置的每个表情符号,NVARCHAR 列末尾的一个字符都会消失。
我知道 NVARCHAR 的最大长度为 4000,但它怎么能用这么短的文本来达到它:
" DUMMY TEXT 以下四个字母将被剪切:abcd"
上传后:
" DUMMY TEXT 以下四个字母将被剪掉:"
我注意到上传后表情符号之间也有一些额外的间距。
这个问题是由表情符号引起的还是我们应该使用另一个dtype
?
谢谢,
道友野
PS: DUMMY TEXT 的长度似乎不影响句尾截断多少个字符。我尝试过使用不同长度的 DUMMY TEXT,它总是会截断与表情符号一样多的字母。