public bool Insert(String tableName, Dictionary<String, String> data)
{
String columns = "";
String values = "";
Boolean returnCode = true;
foreach (KeyValuePair<String, String> val in data)
{
columns += String.Format(" {0},", val.Key.ToString());
values += String.Format(" @PARM_{0},", val.Key.ToString());
}
columns = columns.Substring(0, columns.Length - 1);
values = values.Substring(0, values.Length - 1);
try
{
SQLiteCommand command = new SQLiteCommand(String.Format("insert into {0}({1}) values({2});", tableName, columns, values));
foreach (KeyValuePair<String, String> val in data)
{
if (val.Value.ToString() == "current_timestamp")
command.Parameters.AddWithValue(String.Format("@PARM_{0}", val.Key.ToString()), DateTime.UtcNow);
else
command.Parameters.AddWithValue(String.Format("@PARM_{0}", val.Key.ToString()), val.Value);
}
this.ExecuteNonQuery(command);
}
catch(Exception fail)
{
MessageBox.Show(fail.Message);
returnCode = false;
}
return returnCode;
}