如何获取有关 SQL Server CE 中列的一些特定信息

How to get some specific information about columns in SQL Server CE

我正在 VB.NET 创建和管理 SQL 服务器 CE 数据库的应用程序,我必须获取有关列的一些信息,以将它们放入 DataGridView(每一行dgv 的指的是数据库的 table 的列。

我用在互联网上找到的一些东西做了一个不完整的查询得到:

查询如下:

SELECT COL.[COLUMN_NAME] AS COLNAME,
       COL.[DATA_TYPE],
       CASE WHEN IND.[COLUMN_NAME] IS NOT NULL THEN 1 ELSE 0 END AS PK,
       COL.[COLUMN_DEFAULT],
       CASE WHEN COL.[IS_NULLABLE] = 'YES' THEN 1 ELSE 0 END AS ALLOW_NULL
FROM INFORMATION_SCHEMA.COLUMNS AS COL LEFT JOIN INFORMATION_SCHEMA.INDEXES AS IND ON COL.COLUMN_NAME=IND.COLUMN_NAME AND COL.TABLE_NAME=IND.TABLE_NAME
WHERE COL.TABLE_NAME='MyTable'

效果很好,但我还需要以下信息:

我如何更新查询以获取这些信息以及它已经提供给我的信息?

感谢并抱歉我糟糕的英语(我是意大利人,我很难用另一种语言写作)。

您可以检查 autoinc_increment 列是否为 NOT NULL,那么它是一个 IDENTITY 列。但是你也可以简单地使用我的 SqlCeScripting 库通过代码获取所有这些信息,而不必自己重新发明这些查询 - http://exportsqlce.codeplex.com