Как получить доступ к базе данных Access с помощью JavaScript? - PullRequest
3 голосов
/ 16 декабря 2008

Мне нужно показывать оценки моих учеников через мой сайт. База данных создается с использованием Microsoft Access . Как я могу отображать оценки каждого студента в таблице, когда они вводят регистрационный номер?

Ответы [ 9 ]

6 голосов
/ 16 декабря 2008

Почему вы хотите использовать Javascript? Он запускается в браузере посетителей сайта, и даже если бы был способ получить прямой доступ к базе данных (чего нет), это было бы ужасным риском для безопасности, поскольку в нем должен был бы быть пароль БД чтобы каждый посетитель сайта мог получить полный доступ к БД.

Вам нужно что-то, что работает на сервере и обращается к БД, чтобы доставлять посетителю разные страницы в зависимости от данных, введенных в HTML-форме. Типичными языками для этого являются PHP, Perl, Ruby или ASP.

Также обратите внимание, что MS Access является очень плохим выбором в качестве серверной части БД для веб-приложения, поскольку он не поддерживает одновременный доступ от разных пользователей.

В целом, похоже, вам нужна более прямая помощь, чем может предоставить этот сайт; Попробуйте найти специалиста по веб-приложениям в вашем регионе.

3 голосов
/ 07 мая 2012

Я знаю, что это старый вопрос, но я случайно наткнулся на этот проект, AccessDB, одновременно с этим вопросом, поэтому я решил опубликовать его. Обратите внимание, что он говорит, что это для использования с Internet Explorer. Я предполагаю, что они используют только функцию Microsoft для доступа к файлу, но я действительно не изучал его.

С их сайта:

ACCESSdb - это библиотека JavaScript, используемая для динамического подключения и запрашивать локально доступные файлы базы данных Microsoft Access в Internet Explorer. Все, что вам нужно, это файл .mdb; Доступ даже не нужно установить!

http://accessdb.sourceforge.net/

3 голосов
/ 16 декабря 2008

JavaScript не может напрямую получить доступ к базе данных. Вам понадобится серверный компонент, который принимает запросы (возможно, через HTTP), анализирует их и возвращает запрошенные данные.

Тогда JavaScript сможет получить доступ к этому компоненту для извлечения данных (хм ... пахнет AJAX).

1 голос
/ 16 декабря 2008

Если вы ищете доступ к базе данных на стороне клиента, то, что говорили все остальные.

Если вы просто ищете способ доступа к базе данных (НЕ в браузере), и Javascript - это язык, который вам наиболее удобен, попробуйте JSDB . (Это оболочка Javascript, в которой есть привязки для баз данных через ODBC, SQLite и простые файлы). Я часто ее использовал, и это моя предпочтительная оболочка для сценариев.

1 голос
/ 16 декабря 2008

Вы думаете со стороны клиента, тогда как вы должны думать со стороны сервера.

Вам необходим сценарий на стороне сервера, который будет запрашивать Access и создавать для него HTML-код в зависимости от значения регистрационного номера, указанного в форме.

Язык сценариев зависит от вас. Учитывая, что вы используете Access, я полагаю, что один из языков семейства Microsoft будет лучшим, и что в вашем учреждении уже будет веб-сервер (предположительно IIS) для размещения вашего сайта.

Перво-наперво:

  • Какое серверное программное обеспечение работает в вашем учреждении? Это определяет лучший язык программирования для использования.
  • Какой у вас бюджет. Если он близок к нулю, то вы смотрите на бесплатные IDE. Возможно, было бы лучше разработать в Eclipse и развернуть на Tomcat независимо от ОС сервера.
  • Какие языки вы знаете?
  • Получить книгу о программировании веб-сайтов с использованием выбранной вами технологии. Например, для Java я бы предложил использовать Struts и Tiles для такого простого веб-сайта, как этот.
  • Возможно, вы захотите перенести данные из Access в серверную часть базы данных - MSSQL, если ваша организация уже имеет лицензию, или MySQL или PostgreSQL, если у вас бюджет нулевой.

Судя по твоему вопросу, это все для тебя ново. Однако это небольшой проект, поэтому он идеально подойдет для написания интерактивных веб-сайтов.

1 голос
/ 16 декабря 2008

Я не использовал M $ Access в течение очень долгого времени, но я думаю, что у них есть довольно неплохие способы экспорта данных в формат HTML. Это будет статический HTML-код, но этого может быть достаточно для того, что вы хотите сделать. Определенно проще, чем писать бэкэнд БД ...

0 голосов
/ 19 июля 2013

Вы можете использовать PHP для передачи данных для входа в базу данных доступа, чтобы обеспечить более безопасный вход. Еще лучше использовать mySql с PHP.

0 голосов
/ 16 декабря 2008

Вот простой ASP (vbscript) скрипт, который выгрузит ваши данные в таблицу. Вы можете отредактировать путь и запрос в соответствии с вашей ситуацией. Как уже упоминалось, это не обеспечивает достойной безопасности.

Позвоните с FILENAME.asp? Regno = xxxxx

<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:/YourDatabase.mdb"
SQL = "Select * from TABLENAME where regno=" & request("regno")
set RS= Conn.execute(SQL)
%>
<table>
    <tr>
    <% for x=0 to rs.fields.count-1 %>
        <th><%=RS.fields(x).value%></th>
    <% next %>
    </tr>
    <% do until RS.eof %>
        <tr>
            <% for x=0 to rs.fields.count-1 %>
                <td><%=RS.fields(x).value%></td>
            <% next %>
    </tr>
    <% rs.movenext %>
    <% loop %>
</table>
<%
RS.close()
set Conn=nothing
%>
0 голосов
/ 16 декабря 2008

JavaScript (или любой клиентский язык) не имеет возможности доступа к чему-то, что все еще находится на сервере. Лучший вариант - использовать реализацию AJAX и иметь ряд веб-сервисов, к которым вы можете обращаться с помощью JavaScript и возвращать результаты в удобном для использования формате (скорее всего, в формате JSON).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...