SQLCE 3.5 SP2 与 SQL SERVER 语法异同

本文介绍了在SQLCE 3.5 SP2中遇到的主要错误0x80040E14,详细解释了SQLCE不支持等号(=)作为别名的情况,而需要使用'AS'关键字。同时提供了微软的官方说明链接,以供查询SQL Server Compact 3.5相对于SQL Server支持的Transact-SQL命令、功能和数据类型的异同。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有一次在 SQLCE 3.5 SP2  中执行下列语句:

SELECT
    Name =
        case cap_type
        when 'E' then given_name
        else chinese_name end
FROM cap
WHERE cap_no = '1'

提示以下错误:
  • 主要错误 0x80040E14,次要错误 25501
  • 分析查询时出错。 [ Token line number = 2,Token line offset = 10,Token in error = = ]

后来发现是由于 SQL Server Compact 3.5 不支持带“=”的数据库对象名称的别名,只支持带“AS”的数据库对象名称的别名,将语句更改一下就能正常查询了:

SELECT
    case cap_type
    when 'E' then given_name
    else chinese_name end as Name
FROM cap
WHERE cap_no = '1'


更多的可参考微软说明

使用下表可确定与 SQL Server 相比,SQL Server Compact 3.5 支持哪些 Transact-SQL 命令、功能和数据类型。 

Transact-SQL 命令、功能或数据类型 SQL Server Compact 3.5 SQL Server 2005 SQL Server 2008 /  R2
ALTER TABLE (SQL Server Compact) 中的 SET DEFAULT 选项。 支持 不支持 支持
聚合函数(例如,count(distinct))中的 DISTINCT。 不支持 支持 支持
HAVING 子句 (SQL Server Compact) 子句在聚合和分组查询中使用时可以包含复杂表达式。 仅限简单的列引用 支持 支持
TOP 子句中的 WITH TIES 和 PERCENT。 不支持 支持 支持
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值