F9
Новичок
- Сообщения
- 71
- Репутация
- 2
Доброго дня, гуру!
Возникла необходимость подключаться к базе FireBird Classic 3.0
В связи с чем возник вопрос - а чем принципиально отличается процедура коннекта к базе FB от коннекта к базе mySQL ?
К примеру - рабочая функция SQ()
Возвращает рекордсет, первое значение которой нам показывает msgbox
А на основе ее аналогичная функция FB()
говорит нам, что $fb - это не объект
Что требует FIreBird дополнительно ?
Строка инициализации взята отсюда - http://www.connectionstrings.com/firebird/
Возникла необходимость подключаться к базе FireBird Classic 3.0
В связи с чем возник вопрос - а чем принципиально отличается процедура коннекта к базе FB от коннекта к базе mySQL ?
К примеру - рабочая функция SQ()
Код:
Func SQ()
Local $obdc_drv = "MySQL ODBC 3.51 Driver"
Local $key = "HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers", $val = RegRead($key, $obdc_drv)
If @error or $val = "" Then
MsgBox(64,"Внимание","Вероятно не установлен"& @CR & $obdc_drv)
Exit
EndIf
; Подключаемся к Серверу
Global $MySQLConn = ObjCreate("ADODB.Connection")
$MySQLConn.Open("DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & '10.32.10.36' & ";DATABASE=pharm_zakaz;UID=" & 'root' & ";PWD=" & '***' & ";PORT=3306" & "CHARSET=cp1251;")
$MySQLConn.Execute("SET NAMES 'cp1251'")
$sq = $MySQLConn.Execute("SELECT FIO from manager")
MsgBox(16,"",$sq.Fields(0).Value)
EndFunc
Возвращает рекордсет, первое значение которой нам показывает msgbox
А на основе ее аналогичная функция FB()
Код:
Func FB()
Local $obdc_drv2 = "Firebird/InterBase(r) driver"
Local $key = "HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers", $val = RegRead($key, $obdc_drv2)
If @error or $val = "" Then
MsgBox(64,"Внимание","Вероятно не установлен"& @CR & $obdc_drv2)
Exit
EndIf
; Подключаемся к Серверу
Global $adoCon = ObjCreate("ADODB.Connection")
$adoCon.Open("DRIVER={Firebird/InterBase(r) driver};UID=SYSDBA;PWD=masterkey; DBNAME=127.0.0.1:E:\Base\!IA\IA_Copy\IAPTEKA.FDB;")
$fb = $adoCon.Execute("select PL_NAME from plist where PLID > 0")
MsgBox(16,"",$fb.Fields(0).Value)
EndFunc
говорит нам, что $fb - это не объект
Код:
Variable must be of type "Object".:
Что требует FIreBird дополнительно ?
Строка инициализации взята отсюда - http://www.connectionstrings.com/firebird/