如何从SQL Server中删除扩展ASCII字符

如何从SQL Server中删除扩展ASCII字符,sql,sql-server,ascii,collation,non-ascii-characters,Sql,Sql Server,Ascii,Collation,Non Ascii Characters,因此,尝试删除所有扩展ascii字符,并在ddl中使用排序规则SQL_Latin1_General_CP1253_CI_AI,但仍然获得ascii字符。有什么建议吗 我在sql中有一个值存储为'accõrd',我希望它存储为accord。当我尝试选择ccõrd collate SQL_Latin1_General_CP1253_CI_AI时,它可以工作,但当我加载它时,它仍然会被加载为ccõrd,这里有两种方法来实现您想要做的事情 第一种方法:使用特定排序规则定义列,例如: 创建表dbo.Foo

因此,尝试删除所有扩展ascii字符,并在ddl中使用排序规则SQL_Latin1_General_CP1253_CI_AI,但仍然获得ascii字符。有什么建议吗


我在sql中有一个值存储为'accõrd',我希望它存储为accord。当我尝试选择ccõrd collate SQL_Latin1_General_CP1253_CI_AI时,它可以工作,但当我加载它时,它仍然会被加载为ccõrd,这里有两种方法来实现您想要做的事情

第一种方法:使用特定排序规则定义列,例如:

创建表dbo.Foo FooName varchar50校对SQL\u拉丁1\u通用\u CP1253\u CI\u AI ; 插入dbo.Foo FooName值'accõrd'; 从dbo.Foo中选择FooName; 这将产生:

FooName
-------
accord
BarName
-------
accord
第二种方法:在将文本插入表格时对其进行整理:

-显示安装过程中配置的SQL Server实例的默认排序规则。 -例如:SQL\u拉丁语\u通用\u CP1\u CI\u AS 选择serverproperty'collation'作为ServerCollation; -显示在“创建数据库”中配置的当前数据库的默认排序规则。 -例如:SQL\u拉丁语\u通用\u CP1\u CI\u AS 选择排序规则名称 从sys.databases 其中,[name]=db_name; 创建表dbo.Bar BarName varchar50-数据库默认值:将SQL\u Latin1\u General\u CP1\u CI\u整理为 ; 插入dbo.Bar BarName值“accõrd”对照SQL拉丁语通用CP1253 CIúAI; 从dbo.Bar中选择BarName; 这将产生:

FooName
-------
accord
BarName
-------
accord

注意:这些排序技巧仅适用于char和varchar数据类型。

请提供详细的说明和完整的说明,说明您正在做什么,困难是什么如果您试图删除非ASCII字符,为什么仍然有ASCII字符是个问题?请使用一些示例数据、您尝试使用的代码、实际结果和预期结果编辑您的问题。编辑问题。谢谢@总是学习