C# 如何通过SqlCeCommand对象禁用sql server compact edition中的所有表索引?

C# 如何通过SqlCeCommand对象禁用sql server compact edition中的所有表索引?,c#,indexing,sql-server-ce,ddl,C#,Indexing,Sql Server Ce,Ddl,我正在尝试向SqlCe数据库(3.5版,哦,使用C#3)进行大容量插入。我尝试了各种方法(表适配器插入、准备好的参数化查询、sqlceresultset插入等)。正如我在许多网站上读到的,最快的时间是在表直接模式下使用SqlCeResultSet对象 我希望在执行插入之前禁用必要表上的所有索引,从而进一步加快速度(然后我将重新构建它们)。我在使用ALTERINDEX语句时遇到了一个问题(以前从未使用过它,所以我确信我忽略了一些简单的东西) 基本上,我已经创建了一个SqlCeCommandObje

我正在尝试向SqlCe数据库(3.5版,哦,使用C#3)进行大容量插入。我尝试了各种方法(表适配器插入、准备好的参数化查询、sqlceresultset插入等)。正如我在许多网站上读到的,最快的时间是在表直接模式下使用SqlCeResultSet对象

我希望在执行插入之前禁用必要表上的所有索引,从而进一步加快速度(然后我将重新构建它们)。我在使用ALTERINDEX语句时遇到了一个问题(以前从未使用过它,所以我确信我忽略了一些简单的东西)

基本上,我已经创建了一个SqlCeCommandObject,并以以下方式设置了一个alter语句(Connection对象已经设置好并处于打开状态,等等):

当我尝试运行此代码时,出现以下错误:

分析查询时出错。 [令牌行编号=1,令牌行 偏移量=7,错误令牌=索引]

在我看来,它似乎不理解alter语句中的INDEX关键字。SqlCe中不支持这一点吗

谢谢


[更新]-我尝试过其他DDL语句(如DROP INDEX、CREATE INDEX),但似乎都无法正常工作?我一直在到处搜索,试图找到SSCE中支持和不支持的内容列表,直到DDL语句。不走运。有人知道这方面有什么好的资源吗。sqlce compact 3.5版上的MS文档非常无用,我必须说…

SqlServerCe上的DROP INDEX语法是:

DROP INDEX [TableName].IndexName
SqlServerCe中没有ALTER INDEX语法,因此当它在“INDEX”处表示“错误解析”时,因为它在查找“表”,所以ALTER在SqlServerCe中唯一有效


编辑:至于文档,我发现最好的方法是下载。如果您没有使用3.5 SP1,请查看更完整的可用下载列表。

谢谢。事实上,今天早上我确实遇到了在线图书的事情,我意识到我必须删除索引并重新创建它们(或者干脆不创建它们,而是在批量加载之后创建它们)。
DROP INDEX [TableName].IndexName