如何用vb下,ADOX(或其他方法)给ACCESS数据库中的旧表(即已有数据)加索引?在线等候,立刻加分

chinasqf 2002-02-22 06:21:13
我用的方法:

数据库名:shuiyeold.mdb(2000)
表名:templs
字段名: COLUMN1,COLUMN2

Dim tbl As New Table
Dim idx As New ADOX.Index
Dim cat As New ADOX.Catalog

cat.ActiveConnection = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\shuiyeold.mdb;"
Tbl.Name = "templs"

idx.Columns.Append "column1"
idx.Columns.Append "column1"


' 将索引追加到表上
tbl.Indexes.Append idx

执行时没问题,但索引没加上
...全文
51 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
bcrun 2002-04-11
!!!!!!!!!!!!!!!!!!!!!!!!1??????????????????????????
两位老兄乐于助人,可惜怎么都不看清楚我的意思呀!!
在"现有数据的表"里加自动增加字段!用ADO(X)!!!!

你们说的那些我早就知道了
回复
y1g1y1 2002-04-11
自增字段创建方法范例:

mk:@MSITStore:C:\WINNT\Help\ADO210.CHM::/htm/admscautoincrementcolumnexample.htm



mk:@MSITStore:C:\WINDOWS\Help\ADO210.CHM::/htm/admscautoincrementcolumnexample.htm
回复
y1g1y1 2002-04-11
mk:@MSITStore:C:\WINNT\Help\ADO210.CHM::/htm/admscindexcreationexample.htm



mk:@MSITStore:C:\WINDOWS\Help\ADO210.CHM::/htm/admscindexcreationexample.htm
回复
sonicdater 2002-04-11
http://www.csdn.net/expert/topic/617/617913.xml?temp=.2630884
回复
bcrun 2002-04-10
另外在现有数据的表里加自动增加字段?我参考MSDN用ADOX试了半天,只新建的表能加这种字段,办法现在只会依照VISDATA用DAO建
回复
bucher 2002-02-26
试试看用SQL语言加索引
回复
chinasqf 2002-02-26
真是没办法
回复
alinker 2002-02-22
正好咋天在坛子里找到了一段,现转贴:

问:
连接数据库方式:(ADO2.1)
Public cn As New ADODB.Connection
Public rs As New ADODB.Recordset
cnstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\N2K.mdb;Jet OLEDB:Database Password=;" ';Persist Security Info=False"
cn.Open cnstr
数据库中只有一表:BIAO
AA BB CC DD(字段名)

01 aa 20 asfglaadfk(数据)
........
现数据有100000行,速度很漫,原因是我没有加索引,请问能用程序加索引吗?
立刻加分

******************************************************
答:

创建索引范例

如下代码演示如何创建新的索引。索引针对表的两个列建立。

Sub CreateIndex()

Dim tbl As New Table
Dim idx As New ADOX.Index
Dim cat As New ADOX.Catalog

' 打开目录。
' 打开目录。
cat.ActiveConnection = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=c:\Program Files\Microsoft Office\" & _
"Office\Samples\Northwind.mdb;"

' 定义表并将其追加到目录
tbl.Name = "MyTable"
tbl.Columns.Append "Column1", adInteger
tbl.Columns.Append "Column2", adInteger
tbl.Columns.Append "Column3", adVarWChar, 50
cat.Tables.Append tbl

' 定义多列索引
idx.Name = "multicolidx"
idx.Columns.Append "Column1"
idx.Columns.Append "Column2"

' 将索引追加到表上
tbl.Indexes.Append idx

End Sub
回复
limengchen 2002-02-22
加上cat.tables.refresh试试。
回复
chinasqf 2002-02-22
<a href="www.cctv.com">真的很难吗?</a>
回复
发动态
发帖子

1180

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
社区公告
暂无公告