numa
User
 Junior Boarder
| Posts: 14 |   | Karma: 0 |
|
Re:DAManager time out
|
|
Posted: 2007/06/05 07:50 |
|
|
|
|
void __fastcall Tdm::CreateConnectionDef(AnsiString dbhost,AnsiString dbname, AnsiString dbuser,AnsiString dbpass,AnsiString dbdriver) {
dbConnection->DriverName=dbdriver; TStringList* sl=new TStringList(); AnsiString tmp="Database="; tmp+=dbname; sl->Add(tmp); tmp="User_Name="; tmp+=dbuser; sl->Add(tmp); tmp="Password="; tmp+=dbpass; sl->Add(tmp); tmp="Host="; tmp+=dbhost; sl->Add(tmp); tmp="DriverID="; tmp+=dbdriver; sl->Add(tmp); sl->Add("AutoCommit=False"); if(dbdriver=="MySQL") sl->Add("CharacterSet=cp1256"); dbConnection->Params=sl; /* if use this Time out if(dbManager->IsConnectionDef("CurrentSQL")) dbManager->DeleteConnectionDef("CurrentSQL"); dbManager->AddConnectionDef("CurrentSQl",dbdriver,sl); */ delete sl; // if use this Time out // dbConnection->ConnectionDefName="CurrentSQL";
} void __fastcall Tdm: etDatabaseInfo(AnsiString dbhost,AnsiString dbname, AnsiString dbuser,AnsiString dbpass,AnsiString dbdriver) { dbHost=dbhost; dbName=dbname; dbUser=dbuser; dbPass=dbpass; dbDriver=dbdriver; CreateConnectionDef(dbhost,dbname, dbuser,dbpass,dbdriver); } void __fastcall Tdm::Connect() { try { dbConnection->Open(); } catch(...) { // Create New Database and Create Tables , StoredProcedures database not found , create one CreateDatabase(); } } void __fastcall Tdm: isconnect() { dbConnection->Close(); } void __fastcall Tdm::CreateDatabase() { if(dbDriver=="MySQL") CreateMySQLDatabase(); if(dbDriver=="Ora") CreateOraDatabase(); } void __fastcall Tdm::CreateMySQLDatabase() { CreateConnectionDef("localhost","mysql","root","","MySQL"); try { dbConnection->Open(); } catch(...) { ShowMessage("Cant Create Database"); return; } createDatabase->SQL->Clear(); createDatabase->SQL->Add("create database "+dbName); createDatabase->ExecSQL(); createDatabase->Close(); // Create Tables ... etc
Disconnect(); CreateConnectionDef(dbHost,dbName,dbUser,dbPass,dbDriver); Connect();
} void __fastcall Tdm::CreateOraDatabase() {
} void __fastcall Tdm::OnDestroy(TObject *Sender) { // Disconnect(); } //------------------------------------------------------------------
|
|