Duomenų bazės yra esminiai programinės įrangos kūrimo komponentai. Jos leidžia struktūrizuotai saugoti ir efektyviai pasiekti duomenis. Šiame vadove tu sukursi supratimą, kaip sukurti C# SQLite duomenų bazę ir užpildyti ją pirmaisiais duomenimis.

Svarbiausi pastebėjimai

  • SQLite duomenų bazės sukūrimas C# gali būti paprastas ir struktūruotas.
  • SQL komandos yra būtinos, kad galėtume bendrauti su duomenų baze.
  • Duomenų lentelė reikalauja struktūros, apibrėžtų duomenų tipų ir apribojimų, pavyzdžiui, pirminio rakto.

1 žingsnis: SQLite ryšio paruošimas

Pirmasis uždavinys yra sukurti ryšį su SQLite. Svarbu, kad šis ryšys būtų pasiekiamas MainWindow klasėje, kad jį galima būtų naudoti visuose moduliuose ar metoduose.

Sėkmingai sukurti SQLite duomenų bazę C#

2 žingsnis: Metodų duomenų bazei kurti sukūrimas

Duomenų bazės sukūrimui sukursime atskirą metodą. Pavadinsime jį public void DuomenuBazesKurimas. Šiame metode bus inicijuojami būtini veiksmai, kad būtų galima bendrauti su duomenų baze, ir paruošiamas SQL komandas lentelės sukūrimui.

Sėkmingai sukurta SQLite duomenų bazė C# programoje

3 žingsnis: SQL komandų apibrėžimas

Norėdami bendrauti su duomenų baze, turime įdiegti atitinkamą SQL logiką. Tam sukursime SQLiteCommand objektą. Mes paaiškiname, kad pavyzdžiui, bus naudojamos SQL komandos duomenų lentelės sukūrimui, kurios vėliau bus perduotos duomenų bazei.

Sėkmingai sukurta SQLite duomenų bazė C# kalba

4 žingsnis: Lentelės 'Automobilių markės' sukūrimas

Dabar pereikime prie konkrečių dalykų. Sukursime lentelę pavadinimu Automobilių markės. Tam naudokime CREATE TABLE komandą kartu su IF NOT EXISTS. Tai užtikrins, kad nesukelsime klaidų, jei lentelė jau egzistuoja. Kiekvienam įrašui galime apibrėžti tipą, pažymėdami ID kaip sveikų skaičių ir kaip pirminį raktą.

Sėkmingai sukurkite SQLite duomenų bazę C# kalba

5 žingsnis: Duomenų bazės atidarymas ir komandos vykdymas

Norėdami atidaryti duomenų bazę, naudojame SQLiteConnection.Open() komandą. Po to perduodame SQL komandą lentelės sukūrimui per ExecuteNonQuery komandą. Tai sukurs lentelę, jei ji dar neegzistuoja.

Sėkmingai sukurti SQLite duomenų bazę C# kalba

6 žingsnis: Duomenų įterpimas į lentelę

Pasibaigus lentelės sukūrimui, dabar įterpsime kelis duomenis. Tam dar kartą atidarysime ryšį su duomenų baze ir suteiksime INSERT OR IGNORE komandą, kad pridėtume duomenis prie lentelės. Pavyzdžiui, galime pridėti automobilių markę "VW" su ID 1.

Sėkmingai sukurta SQLite duomenų bazė C#

7 žingsnis: Papildomų duomenų pridėjimas

Panašiai kaip ir anksčiau, galime pridėti daugiau duomenų. Čia komanda gali būti tiesiog nukopijuota ir reikšmės gali būti pakeistos. Pridėsime "Opel" ir "Mercedes", kad užbaigtume automobilių markių sąrašą.

Sėkmingai sukurta SQLite duomenų bazė C#

8 žingsnis: Duomenų bazės uždarymas

Įterpus duomenis, uždarome duomenų bazės ryšį su SQLiteConnection.Close(). Tai užtikrina, kad visi pakeitimai būtų išsaugoti ir neatsirastų konfliktų, jei duomenų bazė bus atidaryta dar kartą.

Santrauka - Pirmieji žingsniai kuriant SQLite duomenų bazę su C

Šiame vadove sužinojai, kaip sukurti SQLite duomenų bazę C# ir užpildyti ją duomenimis. Išsiaiškinai, kokios SQL komandos reikalingos ir kaip užtikrinti, kad tavo programa veiktų stabiliai, teisingai tvarkant duomenų bazės ryšius ir operacijas.

Dažnai užduodami klausimai

Kas yra SQLite ir kodėl man reikėtų jį naudoti?SQLite yra lengvai naudojama, serverio nereikalaujanti SQL duomenų bazės variklis, idealus programų kūrimui, kurios nepriklauso nuo sudėtingos duomenų bazės infrastruktūros.

Kaip galiu užtikrinti, kad mano lentelė nebus sukurta kelis kartus?Naudok IF NOT EXISTS komandą CREATE TABLE SQL komandoje.

Kas yra pirminis raktas?Pirminis raktas yra unikalus identifikatorius kiekvienam įrašui duomenų bazės lentelėje.

Ar turiu visada uždaryti duomenų bazės ryšį?Taip, svarbu uždaryti ryšį po darbo užbaigimo, kad išvengtume duomenų praradimo ir konfliktų.

Kodėl turėčiau naudoti INSERT OR IGNORE?Naudodamas INSERT OR IGNORE gali bandyti įterpti įrašą, nesukeldamas klaidos, jei jis jau egzistuoja.