Clyde Eisenbeis schrieb am 27.01.2017 um 18:51:
I tried this:
-----------------------------
System.Data.SQLite.SQLiteCommand sqliteCmd =
sqliteConnection.CreateCommand());
sqliteCmd.CommandText = "SELECT" + stFieldNames + "FROM " +
stTableName + " WHERE " + stLikeFieldName + " LIKE '%' || ?1 || '%'";
sqliteCmd.Parameters.Add(new SQLiteParameter("string",
liststLikeFieldValue[0]));
SQLiteDataReader sqlReader = sqliteCmd.ExecuteReader();
-----------------------------
Error msg: "unknown error ... Insufficient parameters supplied to the command"
Make sure the parameter name matches what is provided in the statement.
So your
sqliteCmd.Parameters.Add(new SQLiteParameter("string",
liststLikeFieldValue[0]));
shoud read:
sqliteCmd.Parameters.Add(new SQLiteParameter("1",
liststLikeFieldValue[0]));
However, using parameters with a qualfied name is recommended:
sqliteCmd.CommandText = "SELECT" + stFieldNames + "FROM " + stTableName + " WHERE " +
stLikeFieldName + " LIKE '%' || @likeFldName || '%'";
sqliteCmd.Parameters.Add(new SQLiteParameter("@likeFldName",
liststLikeFieldValue[0]));
SQLite is quite generous about possible parameter naming:
http://www.sqlite.org/lang_expr.html#varparam
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users