mike0392 2013-11-11 01:31 采纳率: 0%
浏览 1898

SQLserver2008R2 如何存储泰文

由于数据库中已有资料且需要能存储泰文的列较多,人手一个个改数据类型(ex:nvarchar)有些不现实且需要改动应用程序内嵌代码,有没有一劳永逸的方法直接让现有数据库识别存储泰文?
补充:已经更新到THAI_AS_CI,但发现中文反而存储不能了,有任何解决方法么,同时存储调用泰文和中文

  • 写回答

1条回答 默认 最新

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2024-03-20 23:31
    关注

    所有内容均由人工智能模型输出,其内容的准确性和完整性无法保证,不代表我的态度或观点。
    GLM-4在2024.02.27SuperCLUE基准得分榜单中排行第四https://www.superclueai.com/


    该回答引用GLM-4,仅提供参考,不保证完全正确
    目前为GLM-4(智谱清言)专栏,网页版本:未知(更新时间未知)
    如有图像,GLM-4将尝试识别您的图像
    在SQL Server中存储泰文或其他Unicode字符时,通常建议使用nvarcharnchar数据类型,因为它们是Unicode数据类型,可以存储任何Unicode字符。如果您之前使用的是非Unicode数据类型(如varcharchar),那么存储泰文可能会出现问题。


    为了解决这个问题,同时避免对现有应用程序进行大量修改,您可以采取以下步骤:

    1. 更改数据类型
      • 使用设计工具(如SQL Server Management Studio)或通过编写脚本,将需要存储泰文的列的数据类型从varcharchar更改为nvarcharnchar
      • 如果您不想手动更改每个列,可以编写一个脚本来批量更改这些列的数据类型。
    2. 更改数据库或列的排序规则
      • 您已经更新到了THAI_AS_CI排序规则,这是一个针对泰文的排序规则。但是,这个排序规则可能不支持中文。
      • 为了同时支持泰文和中文,您可以考虑使用一个更通用的排序规则,如UTF-8SQL_Latin1_General_CP1_CI_AS。不过,需要注意的是,排序规则的更改可能会导致现有的数据排序方式发生改变。
    3. 更新应用程序代码
      • 如果您更改了数据库中的数据类型或排序规则,可能需要更新应用程序中的数据库连接字符串,以确保应用程序正确地处理Unicode字符。
      • 如果应用程序中使用了硬编码的列大小或数据类型,可能需要相应地进行修改。
    4. 测试
      • 在进行任何更改之前,请确保备份您的数据库。
      • 在更改数据类型或排序规则后,进行彻底的测试,以确保数据库和应用程式都能正常工作。

    请注意,更改数据库结构可能会对现有的应用程序造成影响,因此在进行更改之前,请确保您已经进行了充分的测试和风险评估。

    评论

报告相同问题?

悬赏问题

  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)