Witajcie,
Mam problem z programem i nie za bardzo wiem jak dalej to pociagnac. Exception wywala o command.Parameters.Add
int new_id = check_last_id(connection)+1;
SQLiteCommand command = new SQLiteCommand("INSERT INTO tracking values (?,?,?,?,?,?,?,?,?,?,?,?,?)", connection);
command.Parameters.Add(new_id); //linia 72
command.Parameters.Add(this.observator_id);
command.Parameters.Add(this.staff_id);
command.Parameters.Add(this.tid);
command.Parameters.Add(this.pid);
command.Parameters.Add(this.sample_size);
command.Parameters.Add(this.post_tracking);
command.Parameters.Add(this.date_time);
command.Parameters.Add(this.observations);
command.Parameters.Add(this.actions);
command.Parameters.Add(this.activity);
command.Parameters.Add(this.stage);
command.Parameters.Add(this.result);
command.Prepare();
command.ExecuteNonQuery();
connection.Close();
wywala z bledem:
System.InvalidCastException: Unable to cast object of type 'System.Int32' to type 'System.Data.SQLite.SQLiteParameter'.
at System.Data.SQLite.SQLiteParameterCollection.Add(Object value)
at HMPO_Employee_Tracker.main_window_form.upload_to_db() in C:\Users\Maciej\source\repos\HMPO Employee Tracker\Form1.cs:line 72
Probowalem to puscic rowniez jako string i takze nie dziala. Wszystkie pozostale zmienne sa stringami.
Tabela bazy danych wyglada nastepujaco:
var query = "CREATE TABLE tracking(" +
"id int NOT NULL UNIQUE PRIMARY KEY," +
"observator_id varchar(20) NOT NULL," +
"staff_id varchar(20) NOT NULL," +
"tid varchar(20)," +
"pid varchar(20)," +
"sample_size varchar(30) NOT NULL," +
"post_tracking varchar(20)," +
"date_time DATETIME NOT NULL," +
"observations TEXT NOT NULL," +
"actions TEXT," +
"activity varchar(20)," +
"stage varchar(20)," +
"result varchar(10))";
Bardzo prosze o jakas wskazowke.