Temukan cara mengeluarkan perintah SQL paling umum menggunakan VB.NET.

VB.NET menawarkan pendekatan yang efisien untuk operasi database, dengan kerangka kerja yang kuat. Dengan menggunakan kekuatannya, Anda dapat memperoleh informasi yang relevan dengan cepat dan dengan sedikit usaha.

Lihatlah beberapa contoh praktis yang menunjukkan cara menggunakan VB.NET untuk melakukan kueri SQL, dan lihat bagaimana Anda dapat memastikan pengambilan data efektif dan efisien.

Menyiapkan Server SQL Lokal Anda

Mulailah dengan menyiapkan server SQL untuk meninjau semuanya langkah demi langkah. Pada contoh di bawah ini Anda akan melihat lingkungan Windows, tetapi jika Anda menggunakan a sistem operasi yang berbeda seperti Linux dan memiliki server SQL yang berbeda, jangan khawatir; logika umumnya akan tetap sama.

Karena kesederhanaannya dan pendekatan konfigurasi nol, SQLite adalah pilihan yang sangat baik untuk pemula.

Untuk mengatur segalanya, buat folder baru, lalu buka prompt perintah dan arahkan ke sana. Jalankan perintah berikut untuk membuat proyek .NET baru di mana Anda dapat menggunakan bahasa VB.NET:

instagram viewer

dotnet new console -lang VB -o MyVBApp

Anda sekarang memiliki proyek bernama Aplikasi VB Saya. Lanjutkan penyiapan dengan mengintegrasikan paket SQLite ke dalam proyek VB.NET Anda menggunakan NuGet, manajer paket populer untuk .NET. Jalankan perintah ini:

dotnet add package System.Data.SQLite

Setelah menambahkan SQLite, Anda dapat menyiapkan database lokal dengan mudah.

Anda dapat menemukan semua kode untuk contoh ini di proyek Repositori GitHub.

Unduh InisialisasiDatabase.vb file dari repositori proyek. File khusus ini akan membantu Anda mengkonfigurasi database Anda. Seperti yang Anda lihat di file ini ada beberapa pengguna dan negara pengguna. Anda dapat menggunakan ini sebagai contoh database.

Perintah yang Anda gunakan untuk membuat proyek VB.NET membuat file bernama Program.vb. Buka file ini dan perbarui sebagai berikut:

Module Program
Sub Main(args AsString())
DatabaseInitializer.InitializeDb()
EndSub
EndModule

Jalankan program ini dan Anda akan melihatnya membuat file bernama database saya.db. Ini adalah database sederhana yang akan Anda gunakan dalam contoh berikut.

Membuat Koneksi Database Dengan SQL di VB.NET

Membuat koneksi menggunakan SQLite di VB.NET sangatlah mudah. Lanjutkan mengedit Program.vb file dan hapus konten subrutin Utama yang ada. File ini berfungsi sebagai inti proyek.

Anda dapat menentukan koneksi ke file database, mydatabase.db, dengan baris kode ini:

Dim connectionString AsString = "Data Source=mydatabase.db; Version=3;"

Sumber data menentukan nama file database. Jika file tidak ada, SQLite akan membuat database baru saat membuat koneksi.

Langkah selanjutnya adalah menggunakan Koneksi SQLite kelas untuk membuat instance koneksi. Anda harus selalu menggunakan a Menggunakan blokir saat bekerja dengan koneksi database untuk menghindari potensi kebocoran atau kebuntuan:

Using conn AsNew SQLiteConnection(connectionString)
conn.Open()

' Database operations go here
EndUsing

Blok Menggunakan memastikan bahwa koneksi ditutup secara otomatis ketika selesai.

File Program.vb akhir Anda akan terlihat seperti ini:

Imports System
Imports System.Data.SQLite

Module Program
Sub Main(args AsString())
Dim connectionString AsString = "Data Source=mydatabase.db; Version=3;"

Try
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()
Console.WriteLine("Successfully connected to the database!")

'You can perform database operations here.
EndUsing
Catch ex As SQLiteException
Console.WriteLine("Error: " & ex.Message)
EndTry
EndSub
EndModule

Kode ini akan terhubung ke database mydatabase.db dan mencetak pesan konfirmasi jika berhasil. Jika terjadi kesalahan, detailnya akan dicetak ke konsol.

Cara Mengambil Data dan Memuatnya ke dalam Array

Itu PILIHperintah SQL adalah cara utama mengambil data dari database SQL. Jika Anda memiliki tabel bernama Pengguna di database Anda dan Anda ingin mendapatkannya Nama bidang dari setiap catatan di tabel itu, gunakan SELECT seperti ini:

SELECT Name FROM Users

Anda dapat mengambil data dari database dan memuatnya ke dalam array dengan menambahkan kueri ini ke file Program.vb:

Dim query AsString = "SELECT Name FROM Users"
Dim names AsNew List(OfString)()

Using conn AsNew SQLiteConnection(connectionString)
conn.Open()

Using cmd AsNew SQLiteCommand(query, conn)
Using reader As SQLiteDataReader = cmd.ExecuteReader()
While reader.Read()
names.Add(reader("Name").ToString())
EndWhile
EndUsing
EndUsing
EndUsing

' Now the 'names' list is full of users' names.
' You can convert this list to an array if you want:
Dim namesArray() AsString = names.ToArray()

' Print array content for testing purposes
ForEach name In namesArray
Console.WriteLine(name)
Next

Anda akan melihat daftar nama di konsol, sesuai dengan isi tabel database Anda:

Kode ini memuat data ke dalam a Daftar struktur—yang memiliki ukuran dinamis—sebelum mengubahnya menjadi array setelah selesai. Pendekatan ini sangat berguna untuk situasi di mana Anda tidak mengetahui sebelumnya jumlah rekaman yang akan Anda ambil.

Cara Menggunakan INSERT untuk Menambahkan Data ke Database

Anda dapat menggunakan MASUKKAN KE DALAM perintah untuk menambahkan data baru ke database. Misalnya, pertimbangkan Pengguna tabel yang memiliki dua kolom bernama Nama Dan Negara.

Kueri SQL dasar yang dapat Anda gunakan untuk menambahkan pengguna baru adalah:

INSERT INTO Users (Name, Country) VALUES ('Fatih', 'TR')

Untuk menambahkan pengguna baru ke database menggunakan kueri ini, perbarui file Program.vb sebagai berikut:

Dim query AsString = $"INSERT INTO Users (Name, Country) VALUES ('{name}', '{country}')"
Using conn AsNew SQLiteConnection(connectionString)
conn.Open()

Using cmd AsNew SQLiteCommand(query, conn)
cmd.ExecuteNonQuery()
EndUsing
EndUsing

Console.WriteLine($"{name} has been successfully added to the database!")

Contoh sederhana ini menggunakan interpolasi string untuk membuat kueri, tetapi Anda harus menghindari ini dalam kode produksi karena memang demikian rentan terhadap injeksi SQL. Alternatifnya adalah kueri berparameter yang membuat operasi database lebih aman dan efisien.

Kueri berparameter menggunakan placeholder, bukan penggabungan string langsung, untuk menambahkan nilai ke kueri SQL. Pendekatan ini akan membantu Anda menghindari banyak ancaman keamanan:

Dim query AsString = "INSERT INTO Users (Name, Country) VALUES (@Name, @Country)"
'...
cmd.Parameters.AddWithValue("@Name", userName)
cmd.Parameters.AddWithValue("@Country", userCountry)

Tips Lain untuk Bekerja Dengan Database Dari Dalam VB.Net

Pengoperasian database di VB.NET mungkin awalnya tampak menakutkan, namun dengan beberapa panduan, Anda dapat dengan mudah menguasai dasar-dasarnya.

  • Gunakan kueri berparametri untuk melindungi dari kerentanan keamanan.
  • Selalu tutup koneksi database Anda setelah Anda selesai mengambil atau memperbarui data.
  • Pertahankan database Anda untuk mengoptimalkan strukturnya seiring perubahan model data Anda seiring waktu.
  • Jangan lupa untuk membuat salinan cadangan jika terjadi keadaan darurat.

Seperti halnya teknologi apa pun, database terus berkembang. Perangkat lunak diperbarui, alat-alat baru bermunculan, dan kami menemukan cara yang lebih baik dalam melakukan sesuatu. Merupakan ide bagus untuk terus mendapatkan informasi dan informasi terkini. Beberapa alat bertindak sebagai perantara, seperti Kerangka Entitas, membuatnya lebih mudah untuk menulis kode terkait database.

Bagaimana Membawa Perjalanan VB.NET Anda Lebih Jauh

VB.NET, dengan koneksi mendalam ke ekosistem Microsoft, kuat dan ramah pengguna. Untuk benar-benar memahami kekuatannya, mulailah dengan dokumentasi resmi yang disediakan oleh Microsoft. Dari sana, jelajahi kursus, forum, dan komunitas online, tempat pengembang berpengalaman berbagi pengetahuan dan wawasan mereka.

Ingat, setiap ahli pernah menjadi pemula. Dengan usaha yang konsisten, rasa ingin tahu, dan sumber daya yang tepat, Anda akan segera menemukan diri Anda menavigasi VB.NET dengan percaya diri dan mudah. Seiring kemajuan Anda, jangan ragu untuk bereksperimen, mengajukan pertanyaan, dan—yang terpenting—nikmati proses penemuannya.