SQLite error Insufficient parameters supplied to the command at Mono.Data.Sqlite.SqliteStatement.BindParameter
ado.net, c#, sqlite, xamarin.android
Solution
Your spelling for `@Category` in INSERT statement is different from added parameter. You have:
command.Parameters.Add(new SqliteParameter("@Cateogry", ""));
^^^^^^^^^^^
//@Category
Where it should be:
Modify your statement to:
command.Parameters.Add(new SqliteParameter("@Category", ""));
Problem
I have a simple insert statement to a table in an SQLite database on MonoDroid. When inserting to the database, it says SQLite error Insufficient parameters supplied to the command at Mono.Data.Sqlite.SqliteStatement.BindParameter I think there is either a bug, or the error message is misleading. Because I only have 5 parameters and I am providing 5 parameters, so I cannot see how this be right. My code is below, and any help would be greatly appreciated. ``` try { using (var connection = new SqliteConnection(ConnectionString)) { connection.Open(); using (var command = connection.CreateCommand()) { command.CommandTimeout = 0; command.CommandText = "INSERT INTO [User] (UserPK ,Name ,Password ,Category ,ContactFK) VALUES ( @UserPK , @Name , @Password , @Category , @ContactFK)"; command.Parameters.Add(new SqliteParameter("@Name", "Has")); command.Parameters.Add(new SqliteParameter("@Password", "Has")); command.Parameters.Add(new SqliteParameter("@Cateogry", "")); command.Parameters.Add(new SqliteParameter("@ContactFK", DBNull.Value)); command.Parameters.Add(new SqliteParameter("@UserPK", DbType.Guid) {Value = Guid.NewGuid()}); var result = command.ExecuteNonQuery(); return = result > 0 ; } } } catch (Exception exception) { LogError(exception); } ```