注册 登录
编程论坛 ASP技术论坛

如何批量修改ACCESS数据表名

theend12 发布于 2010-11-01 22:42, 1206 次点击
<%
oConnStr="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\www.\data\data.mdb"
Sub RenameTable (oldName, newName)
Dim objADOXDatabase
Set objADOXDatabase = Server.CreateObject("ADOX.Catalog")
objADOXDatabase.ActiveConnection = oConnStr
objADOXDatabase.Tables(oldName).Name = newName
Set objADOXDatabase = Nothing
End Sub
'Sub DBConnBegin()
Set oConn=server.CreateObject("adodb.Connection")
oConn.Open oConnStr
If Err.Number>0 Then
Response.End
End If
Const adSchemaTables = 20
adSchemaColumns = 4
Set rstSchema = oConn.OpenSchema(adSchemaColumns)
tablename=""
Do Until rstSchema.EOF
If rstSchema("Table_name")<>tablename then
tablename = rstSchema("Table_name")
response.write tablename & "<BR>"
If InStr(LCase(tablename),"oldname")>0 then
tablename1=Replace(LCase(tablename),"oldname","Xiya_")
Call RenameTable(tablename, tablename1)
End If
end if
rstSchema.MoveNext
Loop
%>

这是网上找的代码,如何利用啊?我怎么修改不成功呢!
6 回复
#2
yms1232010-11-01 23:20
Access的版本,你找的这个是Access2000的
#3
a1900662010-11-02 02:30
我现在用它可以批量修改一个段任何一个字或全句。把整个段清空或修改。当然。你得要做一个提交页面
<%
newurl=trim(request("newurl"))
oldurl=trim(request("oldurl"))
set rs=server.createobject("adodb.recordset")
sqltext="select * from users2 where id=1 "
rs.open sqltext,conn,3,3
rs("oldurl")=trim(request("newurl"))
rs.update
rs.close
response.write "<p align=center>"
response.write "数据"
response.write oldurl
response.write "清空,默认为1从新开始:"
response.write newurl
response.write "<br><br>"
set rs=server.createobject("adodb.recordset")
sqltext="select * from users2 order by id "
rs.open sqltext,conn,3,3
do while not rs.eof
rs("questionb3")=Replace(rs("questionb3"),oldurl,newurl)
rs.update
Rs.moveNext
loop
rs.update
conn.close
set conn=nothing
response.redirect "index.asp"
%>
#4
theend122010-11-02 08:08
回复 2楼 yms123
2003要如何批量修改呢?
#5
theend122010-11-02 20:32
谁也不知道有什么办法么
#6
yms1232010-11-03 17:33
你修改不成功是出现什么现象?报错误?
#7
siwu0012010-11-05 22:49
对啊,怎么报错的你得说清楚
1