Я создал вспомогательный класс для Sqlite на С# (используя Data.SQLite), где я помещаю такие методы, как GetTables, GetColumnNames,...
Теперь я добавил метод AttachDatabase для подключения базы данных, но, похоже, он не работает.
Код для этого метода выглядит следующим образом
public void AttachDatabase(string path)
{
string db_name = "attdb";
sqlConnection.Open();
SQLiteCommand scom = new SQLiteCommand(sqlConnection);
scom.CommandText = "ATTACH '"+path+"' AS " + db_name;
scom.ExecuteNonQuery();
sqlConnection.Close();
}
Метод не генерирует никаких исключений, когда я указываю путь к файлу базы данных.
И чтобы проверить это, я добавил еще один метод во вспомогательный класс, подобный этому
public List<string> GetAllDatabases()
{
List<string> mylist = new List<string>();
sqlConnection.Open();
SQLiteCommand scom = new SQLiteCommand("PRAGMA database_list", sqlConnection);
SQLiteDataReader sreader = scom.ExecuteReader();
while (sreader.Read())
{
string name = (sreader.GetValue(1)).ToString();
mylist.Add(name);
}
sqlConnection.Close();
return mylist;
}
После присоединения базы данных этот метод возвращает список, содержащий только основную таблицу.
Что я делаю неправильно?