Predmet:Re: ObjaĆĄnjenje SQL koda
Gore sam objasno kako se barata stringovima.
Sada kada hocemo da komuniciramo sa bazom podataka a naveo sam da baza podataka razumije samo SQl programski jezik onda smo iz Vb prinudjeni taj SQ pisati kao string i takav slati SQL.
Ako pogrijesimo u SQL-u to nam nece prijaviti Vb nego baza kada joj proslijedimo ovaj string.
Primjer:
Dim MojSQL as string
MojSQL="SELECT * FROM Artikli WHERE ArtikalID=" & Me.IzborArtikla
Pojasnjenje:
"SELECT * FROM Artikli WHERE ArtikalID=" ' Ovo je string koji smo napisali i ako znamo SQL znamo sta on i znaci
'U prevodu bi znacilo Sva polja iz tabele i sve redove koji imaju u polju ArtikalID vrijednost
'Tu je kraj ovog stringa i sql
'On je nepotpun jer nedostaje vrijenost koju zahtijevamo u polju ArtikalID
Da smo napisali ovako:
"SELECT * FROM Artikli WHERE ArtikalID=2"
Tada bi imali staticki SQl tj. uvijek bi nam taj SQl davao isti artikal a nama to rijetko treba.
Zato smo napravili polje na formi u kome cemo birati sifrun artukla i nakon odabira proslijediti bazi.
Samim tim sada dobijamo dinamicki sql.
To smo napravili tako sto smo ovom statickom dijelu sql stringa dodali
Me.IzborArtikla tj. dodali ime polja iz kojeg ce se procitati vrijednost
Posto je ovaj dio vb kod i ovo vb razumije znaci nmora biti pod znacima navoda.
Ukoliko bi ovo stavili pod znake navoda bi obrazlozenje bilo ovako:
MojSQL="SELECT * FROM Artikli WHERE ArtikalID=" & "Me.IzborArtikla"
U prevodu bi znacilo Sva polja iz tabele i sve redove koji imaju u polju ArtikalID vrijednost Me.ImeArtikla a tu vrijednost nema niti jedan red u bazi u polju ArtikalID.
Druga stvar sto ce SQl najvjerovatni prijaviti gresku kada proslijedimo ovaj sql string.
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
Ovaj post je ureden
1
puta. Posljednja izmjena 27.09.2010 17:20 od strane zxz.