public bool Query(SQLField field) { if (field == null) { return(false); } OpenOrCreateIfNeed(); return(sqlite.Query(tableName, field)); }
/// <param name="field">要删除的字段</param> /// <param name="operation">条件语句中的操作符 比如 = 或 like</param> public void Delete(SQLField field, SQLOperation operation = SQLOperation.EQUAL) { if (field == null) { return; } SQLStatement statement = new SQLStatement(GetTableName()); statement.AddConditions(operation, SQLUnion.NONE, field); Delete(statement); }
public bool Query(string tableName, SQLField field) { if (string.IsNullOrEmpty(tableName) || field == null) { return(false); } SQLStatement statement = new SQLStatement(tableName); statement.SelectFields("*").AddConditions(SQLOperation.EQUAL, SQLUnion.NONE, field); SqliteDataReader reader = Query(statement); bool hasRows = reader.HasRows; CloseReader(reader); return(hasRows); }
public List <SQLField[]> Query(string fieldName, SQLField conditionField) { return(Query(fieldName, SQLUnion.NONE, SQLOperation.EQUAL, conditionField)); }
public List <SQLField[]> Query(SQLStatement statement) { if (statement == null) { return(null); } string[] fieldNames = statement.GetSelectFieldArray(); if ((fieldNames == null || fieldNames.Length <= 0)) { return(null); } OpenOrCreateIfNeed(); List <SQLField[]> result = new List <SQLField[]>(); SqliteDataReader reader = sqlite.Query(statement); if (reader.HasRows) { while (reader.Read()) { SQLField[] resultFields = new SQLField[fieldNames.Length]; for (int i = 0; i < fieldNames.Length; i++) { string fieldName = fieldNames[i].Trim(); int ordinal = reader.GetOrdinal(fieldName); if (reader.IsDBNull(ordinal)) { resultFields[i] = new SQLField(fieldName); } else { SQLFieldType fieldType = allFields[fieldName].type; switch (fieldType) { case SQLFieldType.BINARY: resultFields[i] = new SQLField(fieldName).SetValue(Convert.ToString((byte[])reader.GetValue(ordinal))); break; case SQLFieldType.FLOAT: resultFields[i] = new SQLField(fieldName).SetValue(Convert.ToString(reader.GetFloat(ordinal))); break; case SQLFieldType.INT: resultFields[i] = new SQLField(fieldName).SetValue(Convert.ToString(reader.GetInt32(ordinal))); break; case SQLFieldType.LONG: resultFields[i] = new SQLField(fieldName).SetValue(Convert.ToString(reader.GetInt64(ordinal))); break; case SQLFieldType.TEXT: resultFields[i] = new SQLField(fieldName).SetValue(reader.GetString(ordinal)); break; default: resultFields[i] = new SQLField(fieldName); break; } resultFields[i].SetType(fieldType); } } result.Add(resultFields); } } sqlite.CloseReader(reader); return(result); }
public void Update(SQLField field, SQLField conditionField) { Update(field, SQLUnion.NONE, SQLOperation.EQUAL, conditionField); }
public void Update(SQLField field, SQLUnion union, params SQLField[] conditionFields) { Update(field, union, SQLOperation.EQUAL, conditionFields); }
public void Update(SQLField field, SQLUnion union, SQLOperation operation, params SQLField[] conditionFields) { Update(new SQLField[] { field }, union, operation, conditionFields); }