Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > соединение с access 2002


Автор: ANDeath 9.1.2008, 11:21
Доброе время суток.
Пытаюсь элементарно соединится с базой access пакета Office XP, а в ответ постоянно:
Error reading the database.Invalid operation. The connection is closed.

Перепробовал множество вариаций connectionString в том числе как для System.Data.OleDb так и для System.Data.Odbc

Используемый код:
Код

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.OleDb;
//using System.Data.Odbc;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\mydatabase.mdb;User Id=Adm;Password=010203;";
        OleDbConnection con = new OleDbConnection(connectionString);
        //string connectionString = "Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\\mydatabase.mdb;Uid=Administrator;Pwd=010203;";
        //OdbcConnection con = new OdbcConnection(connectionString);
      try
      {
          //открытие
          lbinfo.Text = "<b>Server Version</b> " + con.ServerVersion + "<br/>";
          lbinfo.Text += "<b>Connection Is:</b> " + con.State.ToString();
      }
      catch (Exception err)
      {
          lbinfo.Text = "Error reading the database." + err.Message;
      }
      finally
      {
          con.Close();
          lbinfo.Text += "<br/>Now Connection Is:</b> " + con.State.ToString();
          lbinfo.Text += "<br/>" + con.DataSource;
      }
    }
}


...наверное стоит отметить, что среда разработки - Visual Web Developer.
За ранее благодарен.

Автор: Ilya_N 9.1.2008, 14:37
Приветствую,

хорошо бы было видеть в какой именно строке выскакивает ошибка. А вообще не могу найти метод con.Open(), который собственно открывает соединение с БД.

Автор: ANDeath 9.1.2008, 17:05
Да, действительно так, дело в методе Open...хотя его пробовал тоже, видимо зациклился на стринге.

Тогда еще вопрос, смогу ли я организовать подключение при том обстоянельстве, что люди должны еще работать именно с этой базой в обычном режиме в тоже время?

И был бы благодарен за любой рабочий пример. Книги не помогают.

Автор: Mymik 10.1.2008, 01:00
Цитата(ANDeath @  9.1.2008,  17:05 Найти цитируемый пост)
что люди должны еще работать именно с этой базой в обычном режиме в тоже время?

Можешь перефразировать вопрос ??? Я немного не понимаю вопрос... могу только догадываться, что ты имеешь ввиду транзакции... 

Автор: ANDeath 10.1.2008, 11:56
Просто у меня есть в сети mdb файл, с которым через приложение MS Access работают сотрудники.
И надо через vpn и веб-интерфейс организовать работу удаленым пользователям.
А так как я читал, что при открытой апликейшеном Access БД, соединение вызывает ошибку, то от сюда и такой вопрос, чтоит ли вообще игра свечь?
Спасибо.

Автор: farad 10.1.2008, 13:25
Цитата(ANDeath @  10.1.2008,  11:56 Найти цитируемый пост)
что при открытой апликейшеном Access БД, соединение вызывает ошибку,
а зачем держать соединение открытым? Его следует закрывать сразу же после получения данных. 

Автор: ANDeath 10.1.2008, 16:58
Я наверное плохо умею задавать вопросы. Люди, вы что с access никогда не работали? У него база и сопутствующий интерфейс хранится в одном mdb файле.
А ОТКРЫТО будет приложение Microsoft Access 2002 (XP) на компьютере пользователя, либо через терминал на сервере - неважно.
Это приложение будет иметь постяный конект с базой, ибо ему надо поддерживать синхронизацию данных.
Вот меня и волнует вопрос, пройдет ли конект и выборка данных из веб-интервейса? Пока нет вариантов проверить, потому хочу заранее осведомиться. Тем более, у меня такое чувство, что при обращении на ресурс через vpn будут свои нюансы. Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)