public bool writeEntry(string section, string key, object value) { SqlNonQuery nonquery = new SqlNonQuery(); if (!(getSections().Contains(section))) { if (!createTable()) { return(false); } } bool isUpdate = readEntry(section, key) != null; SqlStringBuilder builder; if (value == null) { builder = SqlStringBuilderFactory.createDELETE(); { var withBlock = builder; withBlock.addTable(section); withBlock.addCondition("Key", "=", key); } } else { builder = isUpdate ? Data.SqlStringBuilderFactory.createUPDATE() : Data.SqlStringBuilderFactory.createINSERT(); { var table = builder; table.addTable(section); table.addValue("Key", key); table.addValue("Json", value); if (isUpdate) { table.addCondition("Key", "=", key); //table.addCondition("Json", "=", value); } } } string qs = builder.ToString(); Dictionary <string, object> @params = builder.getParameterValues(); int result = nonquery.execute(qs, mDatabase, @params); return(result > 0); }
private bool createTable() { SqlNonQuery nonquery = new SqlNonQuery(); //nonquery.Password = mPassword; SqlStringBuilder builder = SqlStringBuilderFactory.createCREATE_TABLE(); { var table = builder; table.addTable(TABLENAME); table.addColumn("Key", "VARCHAR", 100, false); table.addColumn("Json", "VARCHAR", 5000000, false); table.setPrimaryKey("Key"); } string qs = builder.ToString(); Dictionary <string, object> @params = builder.getParameterValues(); int result = nonquery.execute(qs, mDatabase, @params); return(getSections().Contains(TABLENAME)); }