【问题标题】:Selecting data from keyword columns in SQL CE从 SQL CE 中的关键字列中选择数据
【发布时间】:2013-03-13 14:53:15
【问题描述】:

我正在尝试查询我的 SQL CE 以检索数据库元数据 - 目前我正在尝试使用以下方法获取索引数据:

select * from information_schema.indexes

但是,此查询将以编程方式运行 - 并且需要以正确的顺序返回所需的列。因此,我构建了以下选择语句:

select Table_Name, Table_Schema, Index_Name, Clustered, Unique, Column_Name from information_schema.indexes

但是,ClusteredUnique 是保留关键字,不能在 select 语句中使用。这样做,我收到以下错误:There was an error parsing the query. [Token line number: 1,Token line offset: 45, 0,Token in error: Clustered,,]

我在这里发现了一个类似的问题 (Using SQL keyword in title of table or column),但该解决方案似乎不适用于 SQL CE(将列名包装在反引号中)。

知道如何从 SQL CE 中的关键字列中实际选择数据吗?

【问题讨论】:

标签: sql sql-server-ce


【解决方案1】:

那篇文章是关于在 MySQL 中执行此操作的。 SQL Server(SQL CE 是其衍生产品)使用方括号作为字段标识符,因此请将字段括在方括号 [] 中。

select
    Table_Name,
    Table_Schema,
    Index_Name,
    [Clustered],
    [Unique],
    Column_Name
from information_schema.indexes

【讨论】:

    【解决方案2】:

    用方括号括起来:

    select [Table_Name], [Table_Schema], [Index_Name], [Clustered], [Unique], [Column_Name] from [information_schema].[indexes]
    

    【讨论】:

    • 非常感谢!不幸的是,我只能将一个答案标记为已接受,但我也赞成你的答案:)
    猜你喜欢
    • 2013-02-18
    • 2021-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多