public virtual capex.data.SQLStatement prepareDeleteStatement(string table, cape.DynamicMap criteria) { if (cape.String.isEmpty(table)) { return(null); } var sb = new cape.StringBuilder(); sb.append("DELETE FROM "); sb.append(table); var @params = new System.Collections.Generic.List <object>(); if (criteria != null && criteria.getCount() > 0) { sb.append(" WHERE "); var first = true; var criterias = criteria.iterateKeys(); while (criterias != null) { var criterium = criterias.next(); if (object.Equals(criterium, null)) { break; } if (first == false) { sb.append(" AND "); } sb.append(criterium); sb.append(" = ?"); first = false; @params.Add(criteria.get(criterium)); } } sb.append(';'); var stmt = prepare(sb.toString()); if (stmt == null) { return(null); } if (@params != null) { var n = 0; var m = @params.Count; for (n = 0; n < m; n++) { var o = @params[n]; if (o != null) { if (o is byte[]) { stmt.addParamBlob(cape.Buffer.asBuffer(o)); } else { var s = cape.String.asString(o); if (object.Equals(s, null)) { s = ""; } stmt.addParamString(s); } } } } return(stmt); }
public virtual capex.data.SQLStatement prepareInsertStatement(string table, cape.DynamicMap data) { if (cape.String.isEmpty(table) || data == null || data.getCount() < 1) { return(null); } var sb = new cape.StringBuilder(); sb.append("INSERT INTO "); sb.append(table); sb.append(" ( "); var first = true; var keys = data.getKeys(); if (keys != null) { var n = 0; var m = keys.Count; for (n = 0; n < m; n++) { var key = keys[n]; if (key != null) { if (first == false) { sb.append(','); } sb.append(key as string); first = false; } } } sb.append(" ) VALUES ( "); first = true; if (keys != null) { var n2 = 0; var m2 = keys.Count; for (n2 = 0; n2 < m2; n2++) { var key1 = keys[n2]; if (key1 != null) { if (first == false) { sb.append(','); } sb.append('?'); first = false; } } } sb.append(" );"); var stmt = prepare(sb.toString()); if (stmt == null) { return(null); } if (keys != null) { var n3 = 0; var m3 = keys.Count; for (n3 = 0; n3 < m3; n3++) { var key2 = keys[n3]; if (key2 != null) { var o = data.get(key2); if (o is string || o is cape.StringObject) { stmt.addParamString(cape.String.asString(o)); } else if (o is cape.IntegerObject) { stmt.addParamInteger(cape.Integer.asInteger(o)); } else if (o is cape.LongIntegerObject) { stmt.addParamLongInteger(cape.LongInteger.asLong(o)); } else if (o is cape.DoubleObject) { stmt.addParamDouble(cape.Double.asDouble(o)); } else if (o is cape.BufferObject) { stmt.addParamBlob(((cape.BufferObject)o).toBuffer()); } else if (o is byte[]) { stmt.addParamBlob(o as byte[]); } else { var s = o as string; if (object.Equals(s, null)) { s = ""; } stmt.addParamString(s); } } } } return(stmt); }