Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];




Вниз

Как подключиться к базе MySQL? 


Canny   (2002-04-02 00:00) [0]

Надо стало законнектитьтя к базе MySQL, а с чего начать? какие компоненты использовать, подскажите, люди добрые



deleon   (2002-04-02 08:27) [1]

Отличные компоненты ZeosDBO:
http://www.zeoslib.org



Serg3757   (2002-04-02 10:56) [2]

www.microolap.com



Севостьянов Игорь   (2002-04-03 11:52) [3]

Я коннектился через ADO -> ODBC
Драйвера можно скачать здесь + API для них (авось и без ADO обойдешься напрямую через API)
http://www.mysql.com/downloads/index.html

Вот куски кода - думаю разберешься...


unit Login;

interface

uses ...


type
TfrmLogin = class(TForm)
...
const ODBCDriver = "\myodbc.dll" ;
RegSubKey = "\SOFTWARE\CompanyName\";
DSN = "SAMySQL";

var
frmLogin: TfrmLogin;

implementation

uses Data;

{$R *.DFM}

cut --------------
procedure TfrmLogin.btnOKClick(Sender: TObject);
const ConnStr = "Provider=MSDASQL.1;"+
"Persist Security Info=False;"+
"Extended Properties="DSN=%s;DB=%s;SERVER=%s;UID=%s;PWD=%s;"+
"PORT=3306;"+
"OPTION=0;"+
"STMT=;"";
begin
While CountConnect < 3 do begin

try
Screen.Cursor:=crSQLWait;
StatusBar.SimpleText:="Регистрация в системе...";
Inc(CountConnect);

With dmData.ADOConnection do
begin
ConnectionString :=Format(ConnStr, [DSN, DataBase, Server, User, Password]);
Connected := True ;
end;
CountConnect:=3;
StatusBar.SimpleText:="";
except on E: Exception do
if CountConnect >= 3 then
begin
Screen.Cursor:=crDefault;
MessageDlg("Соединиться с базой не удалось: обратитесь к администратору.",mtError,[mbOk],0);
ModalResult:=mrCancel;
Exit;
end else begin
Screen.Cursor:=crDefault;
StatusBar.SimpleText:="";
MessageDlg(E.Message,mtError,[mbOk],0);
Password := "";
edtName.SetFocus;
Exit;
end;
end; // end of except
end; //while
ModalResult:=mrOk;

if chkbxSaveParams.Checked then
With RegRW do
begin
TypeObject := toString;
SetRegistryValue(HKEY_LOCAL_MACHINE,RegSubKey+Application.Title,"UserName",User);
SetRegistryValue(HKEY_LOCAL_MACHINE,RegSubKey+Application.Title,"Database",Database);
SetRegistryValue(HKEY_LOCAL_MACHINE,RegSubKey+Application.Title,"Server",Server);
end;
end;

procedure TfrmLogin.FormCreate(Sender: TObject);
var Srv : String;
begin

With RegRW do
begin
TypeObject := toString;

User := GetRegistryValue(HKEY_LOCAL_MACHINE,RegSubKey+Application.Title,"UserName");
Database := GetRegistryValue(HKEY_LOCAL_MACHINE,RegSubKey+Application.Title,"Database");
Server := GetRegistryValue(HKEY_LOCAL_MACHINE,RegSubKey+Application.Title,"Server");

if Server = "" then
begin
if not InputQuery("Сервер СУБД MySQL","Введите имя или IP адрес хоста MySQL-сервера", Srv) then
begin
Application.Terminate ;
Exit ;
end
else Server := Srv ;
end;

SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources",DSN , "MySQL");
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Database","");
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Description","");
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Driver",dmData.SysInfo.WinSysPath+ODBCDriver);
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Option","0");
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Password","");
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Port","3306");
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Server",Server);
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"Stmt","");
SetRegistryValue(HKEY_LOCAL_MACHINE,"\SOFTWARE\ODBC\ODBC.INI\"+DSN,"User","");
end;
end;




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.018 c
3-69712           Timka                 2002-03-26 18:54  2002.04.22  
Помогите серенькому!!!


7-70036           __Dima                2001-10-24 12:30  2002.04.22  
Защита программы


1-69806           MystiX                2002-04-09 18:32  2002.04.22  
Help with mouse


3-69697           Den_ccc               2002-03-30 07:12  2002.04.22  
навигация по таблицам


3-69727           KAA                   2002-03-28 15:43  2002.04.22  
2000 Работа с курсором