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


Автор: kedicik 7.3.2008, 15:04
Привет всем. Для работы с базой данных Access нужен провайдер? Что нужно сделать чтобы обеспечить связь страниц с базой данных?
И как отловить ошибку если нет провайдера?

Добавлено через 3 минуты и 13 секунд
string connectionString = "provider=Microsoft.JET.OLEDB.4.0;" и тд
Это я указываю в конфиге. Как отловить ошибку если провайдер отсутствует?

Автор: kedicik 7.3.2008, 15:24
то есть  Microsoft Data Access Components не загружены

Добавлено через 56 секунд
и как проверить в принципе ззагружены эти компоненты или нет?

Автор: kedicik 10.3.2008, 16:39
Вот такая ошибка выводится! Что делать?

Автор: kedicik 10.3.2008, 16:40
Помогите, пож-та!

Автор: thomas 10.3.2008, 17:44
kedicik
Приветствую.
Ищи где в сервере подключить этот  Microsoft Jet и поставщик Microsoft Jet OLE DB.

А то я подумал что у тебя MDAC отсутствует, но он похоже в сервере стоит по умолчанию.
http://www.microsoft.com/downloads/details.aspx?FamilyID=6c050fe3-c795-4b7d-b037-185d0506396c&DisplayLang=ru
Цитата

Обзор
Microsoft Data Access Components (MDAC) 2.8 содержит те же основные компоненты доступа к данным, что и Microsoft SQL Server OLE DB, и драйвер ODBC. Установщик версии MDAC 2.8 устанавливает те же основные компоненты доступа к данным, что и операционная система Microsoft Windows Server 2003.

Этот выпуск не включает Microsoft Jet, поставщик Microsoft Jet OLE DB и драйверы Desktop Database Drivers ODBC или Visual FoxPro ODBC.


Успехов. 

ЗЫ большего посоветовать не могу, т.к. не юзал эту ось.

Автор: kedicik 10.3.2008, 20:47
thomas,  надеялась на твою помощь. Поскольку знаю что ты всегда отвечаешь... МДАС 2.8 установили.
Прочитала в гугле что нужна версия джета сервис пак 8. Скачали этот файл и загрузили. Но никаких результатов!! Дело в том что у нас 64 разрядная ОС.  Может в этом проблема? Увидела в сети что в этом тоже может быть проблема. И что нет джета для 64 разрядной ос. И что нужно переключиться на 32 разряда. Не знаю верно ли это. И как это сделать?

Добавлено через 2 минуты и 30 секунд
через 2 недели сдавать задачу. И что делать? Разработка шла в 32 разрядной ОС. И все работало. А тут такое новшество.... делали как лучше а получилось как всегда....

Автор: thomas 11.3.2008, 09:15
kedicik
извиняюсь конечно за банальность и не существенность совета.
Цитата

через 2 недели сдавать задачу. И что делать? Разработка шла в 32 разрядной ОС. И все работало.

Сдать задачу на 32 разрядной ОС, где все работало.

ЗЫ вчера поспрашивал у других студентов, ни кто с серверной ОС (да еще на 64 разряда) не работал. И подсказать ничего не смогли.
Если знаешь английский поищи в гугле. Извини еще раз, но большим помоч не могу.

Добавлено через 5 минут и 28 секунд
ЗЫ ЗЫ
Попробуй посмотреть http://support.microsoft.com/default.aspx/kb/239114 и просмотри по ссылкам которые там есть.

Добавлено через 8 минут и 15 секунд
Вот http://support.microsoft.com/kb/889100/ загляни.

Обращай внимание на 64 разрядную версию.

Автор: kedicik 11.3.2008, 13:11
thomas, спасибо! на 32 разрядной сдавать не можем. Поскольку все закуплено лицензионное. ответ есть в гугле - нет ядра jet для 64 бит. И предлагают перейти на sql сервер. Но база данных в Access/ И ничего уже поделать нельзя

Добавлено через 2 минуты и 14 секунд
вот теперь ищем --может как то можно переключиться на 32 разряда и в этой системе типа муляции. Но никак не найдем. Конечно это надо спрашивать в другой ветке. Но там отвечают плохо. а нужно поторопиться

Автор: thomas 11.3.2008, 15:23
kedicik
Цитата

И предлагают перейти на sql сервер. Но база данных в Access/ И ничего уже поделать нельзя

а в чем проблема? Если для БД хватало Access, то MS SQL Express хватит за глаза. Версия этого сервера бесплатна.
Установите к нему еще Management Studio Express.  Создайте в ней базу. И перенесите туда данные.
Я так понмаю, в БД не полный набор рабочих данных, а только тестовые. Значит их должно быть немного.

ЗЫ и еще мысль. Посмотрите у мелкомягких на сайте, может ли работать Access 2007 на Windows Server 2003 64bit?
Если да то там должен быть JET.

Автор: kedicik 11.3.2008, 19:40
thomas
Цитата(thomas @  11.3.2008,  15:23 Найти цитируемый пост)
MS SQL Express хватит за глаза

наверное хватит. Но поскольку этого никто не делал никогда.... то .... не знаешь с чего начать и чем это все закончится. 
если бы это все знать раньше!

Цитата(thomas @  11.3.2008,  15:23 Найти цитируемый пост)
Management Studio Express

 а где его взять?

Цитата(thomas @  11.3.2008,  15:23 Найти цитируемый пост)
может ли работать Access 2007 на Windows Server 2003 64bit?
Если да то там должен быть JET. 

вот в этом я сомневаюсь. В гугде по всем ссылкам --- что нет джета для 64 бит

Добавлено через 7 минут и 55 секунд
thomas, еще один вопрос уж задам здесь.
Вот в лит-ре прочитала что если iis и сайт естественно стоит на компе с XP  то всего максимум пользователей --- 10 ! Это верно или нет? И почему такое ограничение? Спрашиваю вот почему.
У нас предполагатся 20 пользователей (система тестирования). Вот поэтому и был закуплен этот сервер (только вот не знали что проблемы с 64 бит). Но есть еще куча компов с XP. Чтобы выйти из нашей ситуации решили сделать сайт на компе с XP. Как вам кажется такой выход? И как вам кажется какие могут быть проблемы? Тогда придется делить на 2 компа? Я имею ввиду по 10 человек. Я права? И что тогда с базой данных? делать из нее 2 копии? Некрасиво как то!

Автор: thomas 11.3.2008, 20:35
kedicik
Приветствую.
По SQL серверу, там ничего сложного нет.
Если ОС локализованная (русская) то возможно и сервер есть русский, 
http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=31711d5d-725c-4afa-9d65-e4465cdff1e7
management studio точно есть русская(сам пользую). 
http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=6053c6f8-82c8-479c-b25b-9aca13141c9e
Там же можно и нужно скачать русскую версию BOL(book on-line) справочная литература по SQL серверу. 
http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=be6a2c5d-00df-4220-b133-29c1e0b6585f
Сделана как msdn, есть и сайт.
http://msdn2.microsoft.com/ru-ru/library/ms203721.aspx
Какие выпуски серверов 2005 есть смотрим тут
http://msdn2.microsoft.com/ru-ru/library/ms144275.aspx

В общем будут вопросы задаем.

Если надо помоч переделать БД из Access в MS SQL пишем в личку или на мыло.

По поводу сайта вопрос задал через мыло моему преподу. Я только начал изучать ASP.NET.

ЗЫ тут http://www.microsoft.com/downloads/results.aspx?pocId=10&freetext=SQL%202005&DisplayLang=en центр загрузки всего что касается SQL server.



Автор: kedicik 11.3.2008, 20:57
thomas,  спасибо. Пока не будем рассматривать sql сервер. Но за ссылки спасибо. Возможно в дальнейшем пригодится.  Если бы времени было больше... Если что выяснится насчет 10 клиентов, то пожалуйста напиши.

Автор: thomas 11.3.2008, 21:26
kedicik
Вот еще в догонку, как раз в вашу тему.
http://msdn2.microsoft.com/ru-ru/sqlserver/aa336346.aspx
Скролим вниз и смотрим три статьи
Разработка веб-приложений с помощью экспресс-выпуска Visual Web Developer 2005 и экспресс-выпуска SQL Server 2005, часть 1, 2, 3

Как ответ от препода получу, сразу сообщу.

Успехов.

ЗЫ А ваша куча компьютеров с WinXP, они в домене или в рабочей группе? Это к вопросу о размещении сайта на машине с ХР.

Автор: kedicik 11.3.2008, 21:38
Цитата(thomas @  11.3.2008,  21:26 Найти цитируемый пост)
А ваша куча компьютеров с WinXP, они в домене или в рабочей группе?

а это имеет значение? Завтра выясню точно. Сеть у нас настраивает другой человек.
В нашем случае можно конечно сделать 2 сайта на 2 компах (чтобы по 10 человек, если такое ограничение есть). Но вот хотелось бы чтобы база была одна. путь к базе данных у меня прописывается в web.config. И база у меня лежала в том же каталоге что и сайт.

Автор: akizelokro 12.3.2008, 08:11
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=125207&SiteID=1

Если верить Microsoft MVP, нужно сменить targetCPU на 32 бита. Jet на 64 бита нет и не планируется.

Цитата

Вот в лит-ре прочитала что если iis и сайт естественно стоит на компе с XP  то всего максимум пользователей --- 10 ! 

не совсем точно. 10 незавершенных конкурирующих соединений в iis. то есть не больше 10 одновременных коннектов. а пользователей разрешается больше.

Автор: kedicik 12.3.2008, 19:47
Цитата(kedicik @  11.3.2008,  21:38 Найти цитируемый пост)
А ваша куча компьютеров с WinXP, они в домене или в рабочей группе?

Они в рабочей группе. А какое это имеет значение. Если это как-то решит проблему , то можно сделать и в домене. (хозяин барин)

Цитата(akizelokro @  12.3.2008,  08:11 Найти цитируемый пост)
10 незавершенных конкурирующих соединений в iis. то есть не больше 10 одновременных коннектов

Ну я так и думала - что 10 сессий висят одновременно . Вы это имеете ввиду?
А что будет если будет больше? Никто с этим не сталкивался?
Сегодня проводили экперимент. И ничего - было больше 10 сессий. (таймаут в конфиге прописан 20 минут)
Все работало как надо! Больше 10. Кто нибудь про это знает? А в книге (2005год) написано про 10 пользователей. Кто нибудь мне ответит?

Автор: thomas 12.3.2008, 23:57
kedicik,
Про домен я спросил потому что подумал, раз у вас Win сервер 2003, то все рабочие станции включены в домен и вебапликацию вы хотите на нем разместить.
Но так как версия сервера 64битная, то у апликации нет возможности соединится с БД Access. И вы говорили про размещение вебапликации(сайта) на машине с ХР.
И если я ничего не путаю, то рабочие станции в домене видят сервер, а в рабочей группе друг друга. Т.е. сайт в рабочей группе, по идее, доступен всем членам(рабочим станциям) группы.

   
Цитата

Ну я так и думала - что 10 сессий висят одновременно . Вы это имеете ввиду?
А что будет если будет больше? Никто с этим не сталкивался?

У нас в школе 11 не смог открыть страницу сайта, когда 10-ть ее просматривали. А вас получилось.
Потестируйте еще. 

ЗЫ И если сервер легально куплен(причем недавно), то почему не обратиться к продавцу  и не поменять на 32 разрядную версию.

Автор: kedicik 13.3.2008, 00:32
Цитата(thomas @  12.3.2008,  23:57 Найти цитируемый пост)
ЗЫ И если сервер легально куплен(причем недавно), то почему не обратиться к продавцу  и не поменять на 32 разрядную версию. 

были на это причины. Какие то заморочки с лицензированием и финансированиемю Нужна была английская версия. Поэтому только такой вариаант. И еще англ версия только 64 бит. 

Цитата(thomas @  12.3.2008,  23:57 Найти цитируемый пост)
У нас в школе 11 не смог открыть страницу сайта, когда 10-ть ее просматривали. А вас получилось.

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

Автор: akizelokro 13.3.2008, 13:05
Цитата

Ну я так и думала - что 10 сессий висят одновременно . Вы это имеете ввиду?

Не висят, а пилятся одновременно к веб-серверу. Количество браузеров ни о чем не говорит. Могу предложить простую проверку. Сделай страничку, которая будет формироваться минут 10 (не в браузере, а на сервере для отдачи в ответ на htttp запрос). И сделай 11 запросов. Тогда только будет видно, потому что в твоем изложении непонятно, юзают ли одновременно твои браузеры веб-сервер или они просто вытащили информацию из кэша и представили на ваше всеобщее обозрение.  Или просто по очереди докачивают картинки.

Добавлено через 6 минут и 53 секунды
Кстати, вы в свойствах проекта targetCPU поменяли на 32? Эффект есть?

Автор: kedicik 13.3.2008, 13:14
Спасибо всем! Вопрос решили все же!
Нашли как перключиться на 32 бит на сервере. Заработал Framework 2/0 32 bit , а 64 запретили.

Добавлено через 1 минуту и 10 секунд
тогда и джет заработал нормально. И к базе данных обратились без проблем.
Но ответ нашли не в хелпе. А в Интернете.

Добавлено через 2 минуты и 3 секунды
если нужна информация как это сделать , то выложу! для будущих поколений smile 

Автор: kedicik 14.3.2008, 19:04
ASP.NET 2.0, 32-bit version
To run the 32-bit version of ASP.NET 2.0, follow these steps: 1. Click Start, click Run, type cmd, and then click OK. 
2. Type the following command to enable the 32-bit mode: 
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1 
3. Type the following command to install the version of ASP.NET 2.0 (32-bit) and to install the script maps at the IIS root and under: 
%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i  
4. Make sure that the status of ASP.NET version 2.0.50727 (32-bit) is set to Allowed in the Web service extension list in Internet Information Services Manager. 

Автор: unicuum 31.3.2008, 01:10
Цитата(kedicik @  13.3.2008,  13:14 Найти цитируемый пост)
если нужна информация как это сделать , то выложу! для будущих поколений smile  

Нормальные люди MSSQL используют для сетевых баз данных. Ещё не нужно забывать, что БД Access всего лишь 2Гб, так что не поразвёртываешься особо.

Добавлено через 1 минуту и 17 секунд
P.S. Конвертация кода и самих данных из аксесса в MSSQL очень простое дело на ADO.NET.

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