protected string CreateSQL(string table, DBTableData data, int type) { int num; string format = ""; string str2 = ""; string str3 = ""; switch (type) { case 0: format = "INSERT INTO " + table + "("; for (num = 0; num < data.Count; num++) { if (!data.GetKeys(num).Substring(0, 1).Equals("&")) { if (num > 0) { format = format + "," + data.GetKeys(num).Substring(1); str2 = str2 + ", ?"; } else { format = format + data.GetKeys(num).Substring(1); str2 = str2 + " ?"; } } } return (format + ") VALUES (" + str2 + ")"); case 1: format = "UPDATE " + table + " SET {0} WHERE 1 = 1 {1}"; for (num = 0; num < data.Count; num++) { if (data.GetKeys(num).Substring(0, 1).Equals("#")) { if (str2.Length == 0) { str2 = str2 + " " + data.GetKeys(num).Substring(1) + " = ? "; } else { str2 = str2 + ", " + data.GetKeys(num).Substring(1) + " = ? "; } } else { str3 = str3 + " AND " + data.GetKeys(num).Substring(1) + " = ? "; } } return string.Format(format, str2, str3); case 2: format = "DELETE FROM " + table + " WHERE 1 = 1 {0}"; for (num = 0; num < data.Count; num++) { str2 = str2 + " AND " + data.GetKeys(num).Substring(1) + " = ? "; } return string.Format(format, str2); case 3: format = "SELECT {0} FROM " + table + " WHERE 1 = 1 {1} "; for (num = 0; num < data.Count; num++) { if (data.GetKeys(num).Substring(0, 1).Equals("#")) { if (str2.Length == 0) { str2 = str2 + " " + data.GetKeys(num).Substring(1); } else { str2 = str2 + ", " + data.GetKeys(num).Substring(1); } } else { str3 = str3 + " AND " + data.GetKeys(num).Substring(1) + " = ? "; } } if (str2.Length == 0) { str2 = " * "; } return string.Format(format, str2, str3); } return format; }
protected IDataParameter[] NewParameter(int size, DBTableData data) { int index = 0; IDataParameter[] parameterArray = new OleDbParameter[size]; for (int i = 0; i < size; i++) { parameterArray[i] = new OleDbParameter(); if ((data != null) && !data.GetKeys(i).Substring(0, 1).Equals("&")) { parameterArray[index].ParameterName = data.GetKeys(i); parameterArray[index].Value = data.GetValues(i); parameterArray[index].DbType = data.GetTypes(i); index++; } } return parameterArray; }