我使用了下面的连接字符串,但在尝试创建表时遇到错误
Dim ConnString As String =“Provider = Microsoft.ACE.OLEDB.12.0; Data Source =”& strFName + _ “;扩展属性=”“Excel 12.0 Xml; HDR = YES; IMEX = 1”“”
无法修改表'tablename'的设计。它位于只读数据库中。
答案 0 :(得分:1)
如果数据库是只读的,那么根据定义,您将无法在其中创建任何表。
答案 1 :(得分:1)
绝对确定您对该文件具有写入权限。例如,您是从IIS访问此权限,只具有有限的权限。检查目录的安全性。在同一个过程中尝试文件的普通File.Open()。
答案 2 :(得分:0)
我个人使用以下内容连接到访问数据库:
_source = "..\db.mdb"
Dim strconnexion As String
strconnexion = "Provider=Microsoft.Jet.OLEDB.4.0;"
strconnexion &= "User ID=Admin;Password=;"
strconnexion &= "Data source=" & _source
_cnBd = New OleDbConnection (strconnexion)
_cnBd.Open()
希望这有帮助。
答案 3 :(得分:0)
您的问题是IMEX = 1。这告诉excel以“导入模式”打开,使连接成为只读。我有同样的问题,奇怪的奇怪的东西。
把它拿出来就像魅力一样。