コード例 #1
0
 /// <summary>
 /// Inserta una nuevo registro en la base de datos
 /// </summary>
 /// <param name="data">La información a insertar en la tabla</param>
 /// <param name="db">La base de datos por defecto</param>
 /// <returns>Verdadero cuando realizá la inserción de manera correcta</returns>
 public Boolean Insert(ISQLiteParser data, string db = "main")
 {
     try
     {
         SQLiteCommand cmd    = new SQLiteCommand();
         InsertField[] fields = data.GetInsertFields();
         //Query definition
         String query = "INSERT INTO \"{0}\".\"{1}\"({2}) VALUES ({3})",
                tableName = fields[0].Tablename,
                fieldsStr = String.Empty, valuesStr = String.Empty;
         foreach (InsertField field in fields)
         {
             fieldsStr += String.Format("\"{0}\", ", field.ColumnName);
             valuesStr += String.Format("@{0}, ", field.ColumnName);
             cmd.Parameters.Add(field.GetSQLiteParameter());
         }
         fieldsStr       = fieldsStr.Substring(0, fieldsStr.Length - 2);
         valuesStr       = valuesStr.Substring(0, valuesStr.Length - 2);
         query           = String.Format(query, db, tableName, fieldsStr, valuesStr);
         cmd.CommandText = query;
         this.Query(cmd);
     }
     catch (Exception exc)
     {
         this.Error = exc.Message;
     }
     return(this.QuerySucced);
 }
コード例 #2
0
 /// <summary>
 /// Actualiza un elemento mediante una condición
 /// </summary>
 /// <param name="element">El elemento actualizar.</param>
 /// <param name="condition">La condición a evaluar.</param>
 /// <param name="conn">La conexión a SQLite.</param>
 /// <param name="input">The input.</param>
 /// <returns></returns>
 public static Boolean UpdateTr(this ISQLiteParser element, string condition, SQLite_Connector conn, KeyValuePair <string, object>[] input)
 {
     UpdateField[] data = input.Select(x => element.PickUpdateFields(x)).Where(y => y != null).ToArray();
     if (conn.Update(data, condition))
     {
         element.UpdateFields(input);
         return(true);
     }
     else
     {
         return(false);
     }
 }