پست سوم: خوندن اطلاعات و نمایش تو کنسول
در پست قبل یادگرفتیم که چطور میشه بعد از ساخت یک بانک اطلاعات، یک رکورد ایجاد کرد و درون آن اطلاعات ذخیره کرد، در این پست یاد می گیریم که چطور اطلاعات رو از دیتابیس بخونیم و نمایش بدیم.
SELECT و متد ExecuteReader استفاده میکنیم. ریدر (Reader) دقیقاً مثل یه کتابخونه که صفحه به صفحه (رکورد به رکورد) جلوتر میره تا به آخرش برسیم.public void ShowAllContacts()
{
string connectionString = "Data Source=PhoneBook.db";
using var connection = new SqliteConnection(connectionString);
connection.Open();
string selectQuery = "SELECT Id, FirstName, LastName, PhoneNumber FROM Contacts";
using var command = new SqliteCommand(selectQuery, connection);
using var reader = command.ExecuteReader();
Console.WriteLine("--- لیست مخاطبین ---");
// تا وقتی که رکوردی برای خوندن وجود داره
while (reader.Read())
{
// خواندن ستونها بر اساس نام یا ایندکس
int id = reader.GetInt32(0);
string fName = reader.GetString(1);
string lName = reader.GetString(2);
string phone = reader.GetString(3);
Console.WriteLine($"کد: {id} | نام: {fName} {lName} | شماره: {phone}");
}
Console.WriteLine("--------------------");
}
تو تابع Read()، هر بار که صدا زده میشه میره روی رکورد بعدی. وقتی دیگه رکوردی نباشه، false برمیگردونه و حلقه while تموم میشه. خیلی ساده و تمیز!