2015-08-06 1 views
0

Я пытаюсь подключиться к базе данных доступа с помощью ADO. Ниже мой сценарий. База данных доступа называется ADOTesting1.mdb. Я думаю, что это связано с этим путем. Здесь находится файл.Проблемы с подключением База данных Access с ASP/ADO

C: \ Inetpub \ Wwwroot \ MyWeb

<% 
Dim conn 
Dim rs 
Dim rdsql 
set conn=Server.CreateObject("ADODB.Connection") 
conn.Provider="Microsoft.Jet.OLEDB.4.0" 
conn.Open "c:/inetpub/wwwroot/MyWeb/ADOTesting1.mdb" 

set rs=Server.CreateObject("ADODB.recordset") 
rs.Open "Select * from Customers", conn 

for each x in rs.fields 
    response.write(x.name) 
    response.write(" = ") 
    response.write(x.value) 
next 
%> 
+0

Я предлагаю вам пометить свой вопрос 'vb.net' и' ms-access', чтобы привлечь больше читателей. – aemxdp

+2

@aemxdp Что [тег: vb.net] имеет отношение к этому вопросу? Вы на самом деле имеете в виду [tag: vbscript] ?, это было бы актуально. – Lankymart

+0

Не храните и не ссылайтесь на свою базу данных из корневого каталога. Храните базу данных вне области веб-сайта и назначьте ей соответствующие разрешения. Если его внутри вашего веб-корня легко оценить всем. Infact я пошел дальше и говорю, что не использую Access вообще, SQL Server - это более безопасный современный вариант, также широко доступный в выпусках SQL Server Express. Больше никаких оправданий для использования файлов MDB. – Lankymart

ответ

0

Вы должны будете использовать Server.MapPath на карту физического пути к пути сайта.

Вместо:

conn.Open "c:/inetpub/wwwroot/MyWeb/ADOTesting1.mdb" 

Try:

conn.Open Server.MapPath("/MyWeb/ADOTesting1.mdb") 

или любой относительный путь к вашему веб-корень "/".

Смежные вопросы