# Shkenca > Informatikë dhe Internet > Arti i programimit >  SQL: Si të fut vlera në tabelë?

## little-boy

Pershendetje,

Kam nje tabel "Studenti" ( ID, Emri, Mbiemri, Adressa, roli) dhe nje tjeter tabel Lendet (ID_L, Emri, Kredia, Data, ID)

Tabela "Studenti" eshte e lidhur me tabelen "Lendet" permes fushes "ID" (nje me shume)

Ne Tabelen "Lendet" disa fusha(Kredia) nuk jan te mbushura dmth kan vleren "NULL"

athehere Pytja ime eshte:

Si Munde me ta fus numrin "2" ne fushen "Lendet.Kredia" ku data ne  "Lendet.Data" eshte ndermjet '2008-1-1' dhe '2008-3-3' dhe Studenti.roli = 3.

Si do te Ishte Kodi ne SQL Server apo Mysql

E Vlersoj ndihmen e Juaj!

----------


## hot_prinz

a duhen te mbushet fusha Lendet.Kredia vetem kur eshte NULL apo edhe atehere kur ka ndonje vlere tjeter e qe u perputhet kritereve Studenti.Roli=3 dhe Lendet.Data ndermjet '2008-1-1' dhe '2008-3-3'?

Kur u perputhet vetem kritereve atehere provoje me:



```



UPDATE Lendet

SET Lendet.Kredia=2

FROM Studenti INNER JOIN Lendet

ON Studenti.ID = Lendet.ID

WHERE Lendet.Data > DateValue('2008-1-1') AND Lendet.Data < DateValue('2008-3-3') 

AND Studenti.roli=3 



```

----------


## hot_prinz

Ne pergjithsi vendosja apo ndryshimi i postimeve shume po mi ngrit nervat ne kete forum, nganjehere me humb teksti i tere kur dua te postoj pergjigjen dhe me duhet te shkruaj perseri apo kur dua te ndryshoj ndonje gje me dalin gabime te panumerta te forumit e nuk mund te ndryshoj pergjigjen.

Bera nje gabim gjate postimit kriteri ne WHERE duhet te futet ne ():

UPDATE Lendet 

SET Lendet.Kredia=2 

FROM Studenti INNER JOIN Lendet 

ON Studenti.ID = Lendet.ID 

WHERE (Lendet.Data > DateValue('2008-1-1') AND Lendet.Data < DateValue('2008-3-3'))

AND Studenti.roli=3

----------


## gimi_sky

nuk ma merr mendja qe funkcionon statementi me larte 
(se paku nuk eshte konform me sql-standardet)
ja nje tjeter statement i cili duhet te funkcionon:



```
UPDATE LENDET 
SET LENDET.KREDIA = 3  
WHERE LENDET.DATA BETWEEN STR_TO_DATE('01/01/2008', '%m/%d/%Y');
 and STR_TO_DATE('03/03/2008', '%m/%d/%Y'); 
AND LENDET.ID IN (SELECT ID FROM STUDENTI WHERE ROLI = 3)
```

----------


## little-boy

> a duhen te mbushet fusha Lendet.Kredia vetem kur eshte NULL apo edhe atehere kur ka ndonje vlere tjeter e qe u perputhet kritereve Studenti.Roli=3 dhe Lendet.Data ndermjet '2008-1-1' dhe '2008-3-3'?
> 
> Kur u perputhet vetem kritereve atehere provoje me:


Po, Vlera 2 duhet futur nese Lendet.Kredia eshe NULL perndryshe kjo vler nuk duhet futur


Falimiderit

----------


## Ardi_Pg_ID

Po ta quash ne standartet e sql te dyja nuk jane te sakta edhe po ta quash ne baze mesimi e jo zgjidhje  ushtrimi prap kane shume per te shtuar ku ne vend te kalojme ne proceduren me te gjate te shpjegimit duhet futur edhe SELECT tabela per te qene me te sakte ne shpjegim. Pergjigja e gimit eshte me e sakte pervec nje gabimi ku
Set lendet.kredia = 2 jo 3

----------


## hot_prinz

une statementin nuk e testova, me shume u mundova te pershtati sipas nje shembulli ne nje liber per SQL nga O'Reilly.
Pasi qe po funksionoka atehere perdor statementin e gimi_sky.

***pershendetje Ardi nuk te pashe qe postove para meje  edhe une mendoj se statementi i gimi_sky eshte me i pershtatshem dhe ne pergjithesi me mungon afersia me SQL, aq sa databazat e mia deri me tani gadi gjithnje perbehen prej nje tabele  :buzeqeshje:

----------


## little-boy

Hot_prinz, Gimi, Ardi

Faliminderit!

----------


## Ardi_Pg_ID

Little boy duhet ta dish se te dyja query nuk kane kontrollin e lende.kredi = NULL

Ardi

----------


## gimi_sky

little-boy cilen DB perdore? Nese perdore mysql, krahasimin me null nuk guxon ta besh me "=" por me IS (per sql server nuk e di)..  
Ja statementi i permiresuar (kisha disa gabime me larte):



```
UPDATE LENDET 
SET LENDET.KREDIA = 2  
WHERE LENDET.DATA BETWEEN STR_TO_DATE('01/01/2008', '%m/%d/%Y')
 and STR_TO_DATE('03/03/2008', '%m/%d/%Y')
AND LENDET.ID IN (SELECT ID FROM STUDENTI WHERE ROLI = 3)
AND LEDNET.KREDIA IS NULL
```

@ardi



> Po ta quash ne standartet e sql te dyja nuk jane te sakta ..


A mundesh me e saktesu se qka nuk përputhet me standardet? 

agimi

----------


## little-boy

> little-boy cilen DB perdore? Nese perdore mysql, krahasimin me null nuk guxon ta besh me "=" por me IS (per sql server nuk e di)..


Agim, Perdori MySql

Shembulli jote me ka ndihmuar shum Faliminderit!

----------


## Altin_Uku

Une habitem per faktin se si ka mundesi qe keni krijuar database por nuk jeni te zoten qe te beni nje agjornim?   Little shkarko ndonje liber nga kjo faqja dhe lexo : www.flazx.us 
Askush nuk ka arritur qe te programoje duke pyetur te tjeret por duke bere shume prova , duke lexuar shume dhe pastaj mund te kerkosh neper forume. 
Mund te kuptoj kur njerezit bejne me te vertete pyetje qe mund te te jene specifike dhe te veshtira por ama kjo pytje eshte bazilare. Sipas meje ke shume per te lexuar dhe per te bere prova.

----------


## little-boy

Altin, plotsisht nuk pajtohem me kete. Mua ky forum me ka ndihmuar shume, vetem duke bere pyetje e qe nganjehere kan qene edhe shume bazike qe tani qeshi me to, dhe si rezultat i ketyre pytjeve pa kurfar problemi jam certifiku ne MCSA & MCSE dhe tani administroj nje DB qe eshte zhvilluar nga IBM. 

edhe njehere 
Hot_prinz, Gimi, Ardi_prog_ID Faleminderit per te gjitha!

----------


## hot_prinz

> Altin, plotsisht nuk pajtohem me kete. Mua ky forum me ka ndihmuar shume, vetem duke bere pyetje e qe nganjehere kan qene edhe shume bazike qe tani qeshi me to, dhe si rezultat i ketyre pytjeve pa kurfar problemi jam certifiku ne MCSA & MCSE dhe tani administroj nje DB qe eshte zhvilluar nga IBM. 
> 
> edhe njehere 
> Hot_prinz, Gimi, Ardi_prog_ID Faleminderit per te gjitha!


Te pershendes little_boy dhe te falenderoj per nderin,

edhe una duke pyetur rreth basics kam perparuar, biles me vone pasi qe e mesova ne menyre autodidaktike kur futesha ne provime me pyeste profesori se cer po boj ne provime, kur i zgjidhja detyrat ne ma shume menyra se sa qe profesori i spjegonte, me duhej ti spjegoja se kete gjojen e di, por po me nevojitet nje dokument qe verteton se una po di.  :Mos:

----------

