PDA

Просмотр полной версии : Проблема с ASP и MySQL



Fenyx
10.06.2004, 18:37
Люди обьясните кто-нибудь(только по подробней), как подключиться к SQL в ASP. ССылки просьба не предлагать у самого их туча...

Еще просьба обьяснить про файл Global.asa.

AiK
10.06.2004, 20:34
как подключиться к SQL в ASP
Очень просто: создаёшь объект ADODB.Connection, и выполняешь его метод open.
Метод требует единственный строковый параметр Connection String, который может описывает параметры подключения (а именно:
имя сервера или IP, login, pswd, опционально порт и имя БД по умолчанию) или же просто указывать имя DSN источника.
global.asa - можно сказать, что это конфигурационный файл, в котором указываются различные константы, создаются объекты и методы, которые могут выполнятся перед запуском любой активной страницы и т.п.

Fenyx
11.06.2004, 09:23
создаёшь объект ADODB.Connection, и выполняешь его метод open

Вот примеры моего Global и *.asp при чтении которых мне выдает ошибку или внутреннюю сервера, или БД. Я не совсем понимаю строку DSN=Системный_DSN(Что она значит?). И если я коннекчусь к другому серверу БД надо ли указывать параметр SERVER=Сервер?(и как правильно?)

Строка Set Conn = Server.CreateObject("ADODB.Connection")
записываеться без изменений или нужно ее менять в зависимости от чего-то?

ЗАРАНЕЕ БЛАГОДАРЕН ЗА ОТВЕТЫ!

Содержание файла GLOBAL.ASA
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Application_OnStart
END SUB
</SCRIPT>

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Application_OnEnd
END SUB
</SCRIPT>

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Session_OnStart

Session("DBConnectionString")="DATABASE=Имя_базы_данных;UID=Имя_ ользователя
;PWD=Пароль_пользователя;DSN=С стемный_DSN;APP=ASP Script"

END SUB
</SCRIPT>

<SCRIPT LANGUAGE=VBScript RUNAT=Server>
SUB Session_OnEnd
END SUB
</SCRIPT>


Файл *.asp
<%
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Session("DBConnectionString")
Set RS = Conn.Execute("select * from DoubleInfo..T_InfoRub")
%>
<% Do While Not RS.EOF %>
%=RS("FldStrName")%>
</br>
<%
RS.MoveNext
Loop
RS.Close
Conn.Close
%>

AiK
11.06.2004, 11:44
DSN=Системный_DSN(Что она значит?).
Есть такое изобретение человечества, под названием ODBC. Либо в Панели управления, либо в Административных инструментах (в зависимости от системы) находишь оснастку для Источников данных (ODBC). Запускаешь и переходишь на закладку Системные DSN, жмёшь пимпу Добавить и выполняешь все наставления визарда. Это имя потом и указываешь в Connection String.

записываеться без изменений или нужно ее менять в зависимости от чего-то?
Ну как тебе сказать, чтобы не обидеть? :) Если тебе нужно создать объект ADODB.Connection, то ничего менять не нужно. Если ты какой другой объект создать хочешь, то тогда строку ADODB.Connection придётся поменять.


И если я коннекчусь к другому серверу БД надо ли указывать параметр SERVER=Сервер?(и как правильно?)
Я уже выше писал, что либо имя DSN, либо имя сервера. Все остальные параметры опциональны (для connection string, но не для самой коннекции) и могут быть указаны через свойство Properties коннекции и как дополнительные параметры метода Open. Приоритетов не помню, IIS'а под руками нет, и, надеюсь, что и не будет :)

Fenyx
11.06.2004, 12:18
А ODBC необходимо настраивать на своей машине или не сервере?

И еще не совсем понял с функцией include file. По какому принципу она работает и в подключаемом файле нужно что-то прописывать помимо <@language> (или так: <script language="JavaScript">? : )) )

AiK
11.06.2004, 12:26
А ODBC необходимо настраивать на своей машине
Да.

И еще не совсем понял с функцией include file
Извини, но об этом - в документации читай. А то совру и недорого возьму :)

Fenyx
11.06.2004, 15:25
А что значит ADODB в строке Set Conn = Server.CreateObject("ADODB.Connection") ?

AiK
11.06.2004, 15:38
ADO = ActiveX Data Object. DB оно и в Африке DB.

Fenyx
14.06.2004, 09:11
А можно как-то с помощью команды include file подключить файл так, чтобы его содержимое не отображалось в "Просмотр в виде HTML"

Fenyx
14.06.2004, 15:56
Подскажите как вывести информацию на экран полученую в резулдтате запроса: Set RS = Conn.Execute("select SUM(bytesrecvd)/1024/1024 from ISA..tb_ISA_WebProxyLog")