Unity içinde SQLite ile çalışıyorum ve başlangıç ekranında oyun tarafından oluşturulan bir tablodan veri yükleme sorunları yaşıyorum. Herhangi bir hata alamıyorum ve "reader.HasRows" çağrım doğrudur. Ancak, verileri bir DataTable'a yüklemeye çalıştığımda hiçbir şey alamıyorum. Daha önce C# ile SQLite kullanmıştım ve bu kodu referans olarak kullanıyorum ama daha önce hiç böyle bir sorun yaşamadım.DataTable.Load() veri alma işlemi ExecuteReader()
ScoreControl.cs: okuyucu kesinlikle bir şey alır, böylece
using (SqliteConnection dbCon = new SqliteConnection("Data Source=" + Application.dataPath + "MainScoreDB.sqlite3"))
{
if (dbCon.State != ConnectionState.Open)
dbCon.Open();
string query = "SELECT * FROM highscores";
SqliteCommand command = new SqliteCommand(query, dbCon);
SqliteDataReader reader = command.ExecuteReader();
if(reader.HasRows)
{
Scores.Load(reader);
}
else
{
Debug.Log("No Data was Returned");
}
if (dbCon.State == ConnectionState.Open)
dbCon.Close();
}
else ateş asla. Ben burada bir kayıp var, ben veritabanı (s3db, sqlite, sqlite3) birden çok biçimini denedim ama hepsi aynı sonucu var. Ayrıca hata da almıyorum.
Application.dataPath kök proje klasörünün atıfta
, ben veritabanı ve tablo oluşturmak, hem de onu referans için kullanabilirsiniz DÜZENLEME yüzden doğru veritabanı sorgulama olduğunu biliyorum, Ayrıca tablo olmadan bir veritabanı yaptım ve bir hata var, bu yüzden veritabanına erişiyor biliyorum.
Scores.Load(), DataTable öğesindeki bir yöntem okuyucunun döndürdüğü verileri girerek yükler.
Bu nedenle while döngüsünün doğru süreden geçtiği görülür, ancak hiçbir şey geri dönmez. Veritabanından çıkan veri türünü yönetmem gerekiyor mu?
Application.dataPath için değeri nedir:
SqlLite için bir DataTable doldurmak için uygun bir yol olarak görünüyor? Doğru veri tabanını soruyor muydun? – Steve
Bir dosya adıyla bir yolu birleştirirken, Path.Combine() öğesini kullanın. Herhangi bir [potansiyel olarak eksik] ters eğik çizgi ile ilgilenecektir. – djv
Sanırım Scores.Load yönteminizi görmemiz gerekiyor, çünkü diğerleri burada iyi görünüyor. Ayrıca, deyim hata ayıkladığınızda ne görüyorsunuz? Satırları kolayca gözden geçirebilirdiniz, bu da kayıtları doğru bir şekilde getirdiğinizden emin olmanızı sağlar. Bir yan not olarak –