Exemplo n.º 1
0
        public string Update(string tableName, string keyName, object instance)
        {
            Dictionary <string, object> FieldsKeyValue = Reflect.GetDBTableFields(instance.GetType(), instance);
            string flds    = "";
            object idValue = null;

            foreach (var fldKV in FieldsKeyValue)
            {
                if (fldKV.Key == keyName)
                {
                    idValue = fldKV.Value.ToString();
                    continue;
                }
                if (fldKV.Value.GetType() == typeof(string))
                {
                    flds += fldKV.Key + "=N'" + fldKV.Value.ToString() + "',";
                }
                else if (fldKV.Value.GetType() == typeof(bool))
                {
                    int bit_value = (bool)fldKV.Value ? 1 : 0;
                    flds += fldKV.Key + "=" + bit_value + ",";
                }
                else
                {
                    flds += fldKV.Key + "=" + fldKV.Value.ToString() + ",";
                }
            }

            flds = flds.TrimEnd(',');
            string sqlStr = "UPDATE " + tableName +
                            " SET " + flds + " WHERE " + keyName + "=" + idValue.ToString();

            return(sqlStr);
        }
Exemplo n.º 2
0
        public string Insert(string tableName, string keyName, object instance, bool autoIncrement)
        {
            Dictionary <string, object> FieldsKeyValue = Reflect.GetDBTableFields(instance.GetType(), instance);
            string flds   = "(";
            string values = "(";

            foreach (var fldKV in FieldsKeyValue)
            {
                if (autoIncrement && fldKV.Key == keyName)
                {
                    continue;
                }

                flds += fldKV.Key + ",";
                if (fldKV.Value.GetType() == typeof(string))
                {
                    values += "N'" + fldKV.Value.ToString() + "',";
                }

                else if (fldKV.Value.GetType() == typeof(bool))
                {
                    int bit_value = (bool)fldKV.Value ? 1 : 0;
                    values += bit_value + ",";
                }
                else
                {
                    values += fldKV.Value.ToString() + ",";
                }
            }
            flds   = flds.TrimEnd(',') + ")";
            values = values.TrimEnd(',') + ")";
            string sqlStr = "INSERT INTO " + tableName + "\n" +
                            flds + "\nVALUES" + values;

            sqlStr += ";\nSELECT @@Identity";
            return(sqlStr);
        }