Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

SQLConnection i IsolationLevel

[es] :: C/C++ programiranje :: SQLConnection i IsolationLevel

[ Pregleda: 1789 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

brenas
srem

Član broj: 50753
Poruke: 110
*.dynamic.sbb.rs.



Profil

icon SQLConnection i IsolationLevel08.01.2011. u 14:35 - pre 161 meseci
primer sam iskopirao bukvalno iz help-a

TTransactionDesc TD;
TD.IsolationLevel=xilReadCommitted //ovde kompajler prijavljuje gresku.
TD.TransactionID=1;

Aplikacija rađena u Turbo C++, firebird baza i DBMS.

ne znam šta dalje, pročitao sam 10 puta help, čačkao po net-u, ali nisam našao neko objašnjenje?
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 15:04 - pre 161 meseci
TD.IsolationLevel = TTransIsolationLevel.xilReadCommitted;

?
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dynamic.sbb.rs.



Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 15:24 - pre 161 meseci
neće: "inproper use of typedef TTransIsolationLevel"
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dynamic.sbb.rs.



Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 15:26 - pre 161 meseci
Ranije sam radio nešto u Turbo Delphiju i koliko se sećam nisam imao problema sa tim.
Sada sam nabavio Turbo C++ builder, pa reko ajde da probam - kad ono...
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 15:37 - pre 161 meseci
Na osnovu fragmenta iz Help-a:
Citat:

Code:

// ...
typedef enum { xilDIRTYREAD, xilREADCOMMITTED, xilREPEATABLEREAD, xilCUSTOM } eXILType;
typedef struct
{
  UNINT32  TransactionID;
  UNINT32  GlobalID;
  eXILType IsolationLevel;
  UNINT32  CustomIsolation;
} TTransactionDesc;
// ...


...i tvog koda:
Citat:

Code:

// ...
TD.IsolationLevel=xilReadCommitted;
// ...


... zakljucuje se da je C++ za razliku od Delphi-ja "osetljiv na slucajeve".

Dakle, umesto xilReadCommitted pokusaj da stavis xilREADCOMMITTED.

Ako nece ni to, pokusacemo sa operatorom :: da dohvatimo enum identifikator preko tipa. Sada se sve nesto menja u headerima, nisam u toku, pa se umesto klasicnog "enum" sve cesce koristi "enum class", ali da ne duzim.


EDIT: I naravno, ne zaboravi "tacku zarez" pre komentara...
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dynamic.sbb.rs.



Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 16:03 - pre 161 meseci
Probao sam i kao xilREADCOMMITTED ali neće ni tako. ista poruka kompajlera.
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dynamic.sbb.rs.



Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 16:08 - pre 161 meseci
sada sam probao da kreiram pokazivac tipa TTransadesc

TTransactionDesc *TD=new TTransactionDesc();

SQLConnection1->StartTransaction(*TD);
// zatim tu SQLQuery upisuje u bazu
SQLConnection1->Commit(*TD);



sada kompajler ćuti dok se ne dođe do stvarnog upisa u bazu a onda kompajler prijavljuje nešto u vezi sa alokacijom memorije!

nemam ideju dalje...
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 16:31 - pre 161 meseci
Ovako, ovaj kod:
Code:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    TTransactionDesc TD;
    TD.IsolationLevel=xilREADCOMMITTED; //ovde kompajler VISE NE prijavljuje gresku.
    TD.TransactionID=1;
}

... kod mene NE prijavljuje gresku ni na BCB6 ni na najnovijoj XE verziji. Da bi svi HEADERI bili ukljuceni, prethodno sam na formu stavio TSQLConnection iz dbExpress sekcije.

Ako se ne varam, headeri koji su ukljuceni su kod XE verzije:
Code:

#include <DB.hpp>
#include <SqlExpr.hpp>

... a kod BCB6:
Code:

#include <DB.hpp>
#include <DBXpress.hpp>
#include <SqlExpr.hpp>


Proveri da li Turbo C++ ukljucuje ovo. Secam se da pojedine komponente (headeri) kod besplatnih verzija nisu bile po defaultu ukljucivane, pa ih je trebalo rucno ukljuciti.
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dynamic.sbb.rs.



Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 16:57 - pre 161 meseci
uključeni su mi ti header-i
DB.hpp
DBXpress.hpp
SqlExpr.hpp

greska koju mi javlja doslovce je "ambiquity between xilREADCOMMITTED and Bde::xilREADCOMMITTED"
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 17:07 - pre 161 meseci
Google: "ambiguity between xilREADCOMMITTED and Bde::xilREADCOMMITTED"

Ako se ne varam, onda pokusaj ovo:
TD.IsolationLevel= Dbxpress::xilREADCOMMITTED;
 
Odgovor na temu

brenas
srem

Član broj: 50753
Poruke: 110
*.dynamic.sbb.rs.



Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 17:21 - pre 161 meseci
Bravo X-e. Već su živci počeli da mi igraju.
Sada radi kako treba.
Hvala!
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: SQLConnection i IsolationLevel08.01.2011. u 17:34 - pre 161 meseci
Ma da, jos u prvom odgovoru sam posumnjao da ce mozda zatrebati i :: ;)
 
Odgovor na temu

[es] :: C/C++ programiranje :: SQLConnection i IsolationLevel

[ Pregleda: 1789 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.