2012-07-25 96 views
1

如何在为c#中的visual fox pro(.dbf)创建表时为字段设置索引(使用oledb)。我想为一个表创建多个索引,并且一些索引是表达式(field1 + field2)。Oledb和visual foxpro

+0

你也明白,Visual FoxPro中不再支持通过Microsoft,所以我不能和永远,支持64位操作系统。 – 2012-07-25 18:00:04

+3

不知道这是相关的! OP正试图解决Foxpro的一个特定问题,而不是主张它的使用! – JMK 2012-07-25 18:12:05

+0

加上VFP应用程序在64位版本的Windows上运行得很好。 – 2012-07-25 20:45:45

回答

6

下面是一个例子:

using(var connection = new OleDbConnection(@"provider=vfpoledb;data source=c:\")) { 
    using(var command = connection.CreateCommand()) { 
     connection.Open(); 
     command.CommandText = "CREATE TABLE Table1(Column1 v(10), Column2 v(10))"; 
     command.ExecuteNonQuery(); 
     command.CommandText = "EXECSCRIPT([USE Table1 IN SELECT(0) EXCLUSIVE])";   
     command.ExecuteNonQuery(); 
     command.CommandText = "EXECSCRIPT([INDEX ON Column1 TAG Tag1])"; 
     command.ExecuteNonQuery(); 
     command.CommandText = "EXECSCRIPT([INDEX ON Column1 + Column2 TAG Tag2])"; 
     command.ExecuteNonQuery();   
     connection.Close(); 
    } 
}