#c# #sqlite
Вопрос:
Я написал класс для создания файла и таблицы SQLite, а также для экспорта информации из таблицы DataTable в таблицу SQLite, как показано ниже:
public class SQLiteFunction
{
//Path of database
public string databaseName { get; set; }
public string dataTableName { get; set; }
private DataTable dt = new DataTable();
public SQLiteFunction()
{
dt.TableName = dataTableName;
}
public void Create_db()
{
if (!File.Exists(databaseName))
{
using (var sqlite = new SQLiteConnection(@"Data Source=" databaseName))
{
sqlite.Open();
string script = File.ReadAllText(@"CreateTable.sql");
SQLiteCommand command = new SQLiteCommand(script, sqlite);
command.ExecuteNonQuery();
sqlite.Close();
}
}
}
public void InsertData()
{
SQLiteConnection con = new SQLiteConnection(@"Data Source=" databaseName);
con.Open();
SQLiteDataAdapter dAdapter = new SQLiteDataAdapter("query string", con);
SQLiteCommandBuilder cmdBuilder = new SQLiteCommandBuilder(dAdapter);
dAdapter.Fill(dt);
dAdapter.UpdateCommand = cmdBuilder.GetUpdateCommand();
dAdapter.Update(dt);
con.Close();
}
}
Я использовал эту ссылку для InsertData()
метода написания. Проблема в том, что InsertData()
частично произошла ошибка во время выполнения dAdapter.Fill(dt);
. В нем говорится::
System.Data.SQLite.Исключение SQLiteException: ‘Логическая ошибка SQL рядом с «запросом»: синтаксическая ошибка’
Мне нужно написать правильный запрос. Моя таблица DataTable, а также таблица SQLte имеют одинаковые имена столбцов. В моей таблице данных 40 столбцов. Я хочу сразу перенести информацию из таблицы DataTable в таблицу SQLite. Пожалуйста, помогите мне.