Mavzu: DataAdapter



Yüklə 0,6 Mb.
Pdf görüntüsü
səhifə5/6
tarix29.12.2021
ölçüsü0,6 Mb.
#48665
1   2   3   4   5   6
DataAdapter

Ma'lumotlarni qo'shish 

DataGridview  juda  qulay,  chunki  u  nafaqat  ma'lumotlarni  ko'rsatish,  balki  yangi  qatorlar 

yaratish imkonini beradi. Buning uchun ma'lumotlar to'plamining eng oxirida to'r bitta bo'sh qatorni 

ko'rsatadi  (16.6-rasm).  Bu  ma'lumotlar  to'plamidagi  bo'sh  satr  emas,  balki  ixtisoslashgan  virtual 

satr, deydi chapdagi yulduzcha. Agar siz ushbu qatorga yangi yozuvning ma'lumotlarini kiritsangiz, 

u  holda  ma'lumotlar  to'plamiga  ushbu  ma'lumotlardan  iborat  qator  qo'shiladi  va  boshqa  yozuvni 

qo'shish uchun pastki qismida yana bo'sh qator paydo bo'ladi. 

Sek.  davomida.  16.12  da  biz  allaqachon  ma'lumotlarni  o'zgartirish  va  ma'lumotlar  bazasiga 

saqlash imkonini beruvchi kichik misolni yozdik. Ushbu misol qo'shilgan yozuvlarni ma'lumotlar 

bazasida saqlay oladimi? Yo'q, chunki o'zgarishlar saqlanadigan UpdateCommand xususiyati faqat 

mavjud ma'lumotlarni yangilash uchun javobgardir. U yangi hech narsa qo'sha olmaydi. 

Ma'lumotlar bazasiga kiritilgan qatorlarni saqlash uchun insertcommand xususiyatini amalga 

oshirish  kerak.  Keling,  misolimizga  yangi  satrlarni  saqlash  qobiliyatini  qo'shamiz.  Yangilangan 

saqlash usuli kodi 16.8 ro'yxatda ko'rsatilgan. 

// Bu yerda UpdateCommand xususiyatini to'ldirish ketadi 

 

// ma'lumotlarni qo'shish 



adapter.Insertcommand = new SqlCommand( 

"INSERT INTO Peoples (Familiyasi, ismi, tug'ilgan_sanasi, jinsi) " 

"VALUES (?, ?, ?, ?) " ) ; 



adapter. Insertcommand. Parameters. Add (" Familiyasi ", SqlType. 

VarChar, 50z " Familiyasi "); 

adapter.Insertcommand.Parameters.Add("ismi ", SqlType.VarChar, 50, 

" ismi "); 

adapter.Insertcommand.Parameters.Add("tug'ilgan_sanasi 

", 


SqlType.Date, О, " tug'ilgan_sanasi "); 

adapter.Insertcommand.Parameters.Add("jinsi  ",  SqlType.VarChar, 

50/ " jinsi "); 

adapter.Insertcommand.Connection = connection

adapter.Update(dataset.Tables[0]); 

Joyni  tejash  uchun  UpdateCommand  xususiyatini  to'ldiradigan  kodni  o'tkazib  yubordim. 

Qo'shilgan qatorlarni saqlash uchun insertcommand xususiyatiga SQL INSERT buyrug'ini yozing, 

bu esa ma'lumotlar bazasiga yozuv qo'shadi. Shundan so'ng biz parametrlar to'plamini to'ldiramiz. 

Bunday  holda,  qo'shish  so'rovida  men  barcha  maydonlarni,  shu  jumladan  tug'ilgan  sanani 

to'ldirishga qaror qildim, shuning uchun biz parametrlar to'plamiga tug'ilgan sanani ham qo'shamiz. 

Insertcommand buyrug'i ulanish uchun ishlatiladigan ulanish ob'ektini aniq ko'rsatishi kerak. 

Va  oxirida  biz  adapterning  update1  ()  usulini  chaqiramiz,  bu  barcha  o'zgarishlarni  saqlaydi.  Bu 

safar u nafaqat mavjud ma'lumotlarga kiritilgan o'zgarishlarni, balki DataSetga qo'shilgan barcha 

qatorlarni  saqlaydi.  Shuning  uchun,  har  bir  buyruqni  alohida  to'ldirgandan  keyin  emas,  balki 

yangilash va kiritish buyruqlarini ko'rsatgandan so'ng, update1 () usulini faqat bir marta chaqirish 

kifoya. 


Yozuvlarni  bitta  jadvalda  saqlash  muammo  emas.  Alohida  jadvalda  saqlangan  manzil  bilan 

bo'lgani  kabi,  bir  nechta  jadvallar  bo'ylab  ma'lumotlarni  tarqatish  kerak  bo'lganda  muammolar 

paydo bo'ladi. Biz ilgari yozgan misolda biz shaxsning ma'lumotlarini bir jadvalda, manzilini esa 

boshqa jadvalda saqlashimiz kerak edi. Agar biror kishi allaqachon ma'lumotlar bazasida boshqa 

manzilda  bo'lgan  bo'lsa,  saqlashdan  oldin  biz  ma'lumotlar  bazasidan  odamni  topib,  unga  yangi 

manzilni  bog'lashimiz  kerak.  Buni  insertcommand-da  qanday  qilish  kerak?  Eng  yaxshi  variant 

ma'lumotlarni kiritish uchun saqlangan protseduralardan foydalanishdir. Protsedurada biz odamni 

qidirish bilan so'rovni bajarishimiz mumkin va agar bunday shaxs topilmasa, uni qo'shing va agar 

shaxs  ma'lumotlar  bazasida  bo'lsa,  u  holda  faqat  manzilni  manzillar  jadvaliga  qo'shing  va  uni 

bog'lang. mavjud odamga. 





Yüklə 0,6 Mb.

Dostları ilə paylaş:
1   2   3   4   5   6




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin