2010-10-28 19 views
8

Son zamanlarda SQL Server veritabanımı SQLite DB'ye dönüştürdüm. Ben bu olsun Neden"Veri Kaynağı boş olamaz. Kullanım: bellek: bir bellek içi veritabanını açmak için" ortalama?

ConnectionString = @"Data Source=D:\XXX.db;Version=3"; 
connection = new SQLiteConnection(connectionString); 
connection.Open(); 

: Ama bana bu hatayı atar .Open() kullanarak SQLite açmaya çalıştığınızda:

Data Source cannot be empty. Use :memory: to open an in-memory database 

Edit: Bağlantı dizesi eklendi? Aynı SQL Server veritabanını SQL CE ve mySQL'e dönüştürdüm ve bu hataları alamadım.

+1

Lütfen bağlantı dizesini soruya koyun. –

+0

ConnectionString = @ "Veri Kaynağı = D: \ XXX.db; Sürüm = 3; bağlantı = new SQLiteConnection (connectionString); connection.Open(); –

+0

Bu alan, = ?? Veri Kaynağı = D: \ XXX sonra önemlidir .db –

cevap

9

Veri kaynağınızdan sonra bir boşluk var: Data Source= D:\XXX.db. Ayrıca, kopyala/yapıştırmanızda, bağlantı dizesine kapatma teklifi yoktur. İşte test aracı için bana çalışan bir bağlantı dizesi:

@"Data Source=C:\Temp\Test.db3;Pooling=true;FailIfMissing=false;Version=3" 
+0

Teşekkürler dostum. Bunu zaten anladım ve yorumumda şu sorunun altını görebilirsiniz. –

0

Veri Kaynağınız boş olduğu için. Veri kaynağı paramater bağlantı dizenize ekleyin. Sqlite veritabanını açmadan önce.

+0

Onun boş değil. Tam yol dude belirttim .. connectionString = @ "Veri Kaynağı = D: \ xxx.db; şekli = 3; bağlantı = yeni SQLiteConnection (connectionString); bağlantı.Open(); –

+0

Belki de 'D: \ 'önündeki boşluğu kaldırarak ve çift tırnak ile connectionString'i kapatmanız yardımcı olabilir. – tidwall

+0

üzgünüm adamlar benim hatam ... bir yerde "veri kaynağı" olarak boşluklar olmadan bahsettim .. bu sorun neden oldu. Teşekkürler –

0

sqlite dosyasının bulunduğu bir veri kaynağı adı sağladınız.

+0

Yaptım, diğer yorumlarıma bakın –

İlgili konular