Mavzu: DataAdapter


Ma'lumotlar bazasiga kiritilgan o'zgarishlarni saqlash



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

Ma'lumotlar bazasiga kiritilgan o'zgarishlarni saqlash 

Ma'lumotlar bazasidagi  ma'lumotlarni  ko'rib chiqish yaxshi va qiziqarli, ammo o'zgarishlarni 

tez-tez  saqlash  qobiliyati  ma'lumotlarni  ko'rib  chiqish  nuqtasidir.  Updatecommand  xususiyati 

ma'lumotlar  to'plamidagi  ma'lumotlarni  yangilash  uchun  javobgardir.  Bu  xususiyat  aslida 

SqlCommand sinfining ob'ektidir. 

UpdateCommand  xossasi  bilan  ishlashning  ma'nosi  SelectCommandga  o'xshaydi,  uning 

yordamida biz ma'lumotlarni tanladik. Yangilash buyrug'ida, xuddi shu tarzda, biz ma'lumotlarni 

yangilash  uchun  ishlatiladigan  SQL  so'rovini  yozishimiz  kerak,  parametrlar  (Parameters 

xususiyati)  yordamida  DataSet-dan  olingan  qiymatlar  yangilanish  so'roviga  qanday  o'tishini 

ko'rsatishimiz  kerak.  Va,  albatta,  buyruqlarni  bajarish  uchun  ishlatiladigan  ma'lumotlar  bazasi 

ulanishini ko'rsatishingiz kerak. Oxirgi bayonotda siz amalga oshirishingiz mumkin bo'lgan juda 

qiziqarli  xususiyat  mavjud  -  turli  xil  ulanishlar  olish  so'rovi  va  ma'lumotlarni  yangilash  uchun 

ishlatilishi mumkin. Bu quyidagi maqsadlarda ishlatilishi mumkin: 

• tanlash va ma'lumotlarni yangilash uchun ma'lumotlar bazasiga ulanish, agar ular to'g'ridan-

to'g'ri kodingizda yozilgan bo'lsa, turli xil hisoblardan foydalanish mumkin; 

•  ma'lumotlarni  qidirish  bir  serverdan  olinishi  mumkin  va  saqlash  boshqa  serverda  amalga 

oshirilishi mumkin. Ushbu yondashuv ma'lumotlar marshruti va replikatsiya bilan ishlashda foydali 

bo'lishi mumkin. 

 Biz  tarmoqdagi  ma'lumotlarni  tahrirlashimiz  mumkin  edi,  lekin  o'zgarishlar  saqlanmadi. 

Saqlash  kodini  yozamiz.  Ushbu  misolni  oching  va  bosilganda  saqlaydigan  tugmani  qo'shing. 

Tugma uchun Click hodisasi ishlov beruvchisini yarating va unga  

 

private void saveButton_Click(object sender, EventArgs e) { 



SqlConnection  connection = CreateConnection(); 

SqlDataAdapter adapter = 

new SqlDataAdapter("SELECT * FROM Peoples", connection); 

// buyruq ob'ektini yaratish 

adapter .UpdateCommand = new SqlCommand ( 

"UPDATE Peoples SET Фамилия = ?, Имя = ?, Пол = ? " + 

"WHERE idKey = ?"); 

II ma'lumotlar havolasi parametrlarini yaratish 

adapter. UpdateCommand. Parameters. Add (" Фамилия", SqlType. VarChar, 

50, "Фамилия”); 

adapter. UpdateCommand. Parameters. Add ("Имя", SqlType. VarChar, 

50, "Имя"); 

adapter.UpdateCommand.Parameters.Add("Пол", SqlType.VarChar, 

50, "Пол"); 

adapter.UpdateCommand.Parameters.Add("idKey", SqlType.Integer, 

10, "idKey"); 

// ulanish ob'ektini belgilang 

adapter.UpdateCommand.Connection = connection; 

// ma'lumotlarni yangilash chaqiruvi 




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

UpdateCommand  SqlCommand  xususiyatiga  ega.  Ob'ektni  yaratishda  qavslar  ichida 



konstruktor faqat SQL yangilash so'rovi bilan ko'rsatiladi. Qolganlari aniq belgilanadi. 

Endi biz yangilash so'rovida savol belgilari ko'rinishida  ko'rsatgan parametrlarni ma'lumotlar 

to'plamidan  uzatiladigan  parametrlar  bilan  bog'lashimiz  kerak.  Buning  uchun  UpdateCommand 

buyrug'ining  Parameters  to'plamiga  barcha  parametrlarni  qo'shish  kerak.  Biz  allaqachon 

parametrlarni  qo'shdik  va  bu  yerda  ma'no  bir  xil.  Ular  SQL  so'rovida  tegishli  savollar  e'lon 

qilinganidek  bir  xil  ketma-ketlikda  qo'shilishi  kerak.  To'plamga  parametr  qo'shish  uchun  Add() 

usulidan foydalaning. Ushbu usulning bir nechta qo’shimcha yuklangan variantlari mavjud, ammo 

bu yerda men to'rtta parametrni oladigan maksimal variantni tanladim:  

• parametr nomi; 

• ma'lumotlar turi SqlType ro'yxati sifatida; 

• ma'lumotlar hajmi (ustunlar); 

• ustun nomi. 

Parametrlar to'plamini to'ldirgandan so'ng, men buyruq tomonidan ishlatiladigan ma'lumotlar 

bazasiga ulanish ob'ektini belgilayman. Endi siz o'zgarishlarni saqlashingiz mumkin. Buning uchun 

biz  adapterni  yangilash  ()  usulini  chaqiramiz,  unga  jadval  yoki  DataSetni  o'tkazishimiz  kerak. 

Bizning misolimizda men null jadvalga o'tyapman, chunki faqat u to'rda ko'rsatiladi va faqat uning 

ma'lumotlari foydalanuvchi tomonidan o'zgartirilishi mumkin. 

Agar  dasturni  ishga  tushirsangiz  va  saqlash  tugmachasini  bosmasdan  bir  vaqtning  o'zida  bir 

nechta  satrlarni  o'zgartirsangiz  nima  bo'ladi?  Bunday  holda,  ma'lumotlar  to'plami  o'z  keshida 

o'zgarishlarni to'playdi va tugmani bosish orqali barcha o'zgartirilgan qatorlar ma'lumotlar bazasiga 

o'tkaziladi. 


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