C# 如何对ACCESS数据库里的表 重命名(请详细,最好有代码)
2个回答
展开全部
你好,这个属于sql语句,按照下面就可以实现:
1.select * into t from 原表
2.drop table 原表
3.重建新表(原表的结构)
4.insert into 新表(字段) select * from t
对于这样的SQL 语法:Alter Table OldTableName Rename to NewTableName
在Access 和SQL Server 2000中运行此语句均出错,所以只有用先建后删的方法间接改表名了。
1.select * into t from 原表
2.drop table 原表
3.重建新表(原表的结构)
4.insert into 新表(字段) select * from t
对于这样的SQL 语法:Alter Table OldTableName Rename to NewTableName
在Access 和SQL Server 2000中运行此语句均出错,所以只有用先建后删的方法间接改表名了。
追问
不能直接用
sp_rename重命名吗?
追答
不可以的,acess使用标准的sql语法,rename无法正确运行,请用以上几个步骤进行,以前也遇到这样的问题,是经验.
展开全部
//add Interop.ADOX.dll and adodb.dll into Preference firstly.
....
using ADOX;//Interop.ADOX.dll
using ADODB;//\Microsoft Visual Studio 11.0\Visual Studio Tools for Office\PIA\Common\adodb.dll
....
//rename table
public void RenameTable(string fileName, string oldTableName, string newTableName)
{
string accessConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + fileName;
ADODB.Connection databaseConnection = new ADODB.Connection();
ADOX.Catalog catalog = new ADOX.Catalog();
try
{
databaseConnection.Open(accessConnection, null, null, -1);
catalog.ActiveConnection = databaseConnection;
Table table = catalog.Tables[oldTableName];
table.Name = newTableName;
}
catch { }
finally { databaseConnection.Close(); }
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询