Beispiel #1
0
        public virtual int Delete(string tableName, string columnName, params object[] columnValues)
        {
            if (columnValues != null && columnValues.Length <= 0 &&
                !Info.IsExistColumn(tableName, columnName))
            {
                return(Delete(tableName, (object)columnName));
            }

            if (!Info.IsExistTable(tableName))
            {
                return(-1);
            }

            string delSql = "delete from " + tableName + " where 1=1 " + Script.SqlInByDBType(Info[tableName, columnName], columnValues, this.DBType);
            int    res    = ExecSql(delSql);
            var    lstAct = DataChangeTriggers.GetActions(tableName);

            if (lstAct.Any())
            {
                foreach (var act in lstAct)
                {
                    act.Invoke();
                }
            }
            return(res);
        }
Beispiel #2
0
        public override long InsertGetLong <DT>(DT data, string tableName, params string[] excludeColNames)
        {
            long res    = InsertGet <DT, long>(data, tableName, excludeColNames);
            var  lstAct = DataChangeTriggers.GetActions(tableName);

            if (lstAct.Any())
            {
                foreach (var act in lstAct)
                {
                    act.Invoke();
                }
            }
            return(res);
        }
Beispiel #3
0
        public override int InsertGetInt <DT>(DT data, string tableName, params string[] excludeColNames)
        {
            int res    = InsertGet <DT, int>(data, tableName, excludeColNames);
            var lstAct = DataChangeTriggers.GetActions(tableName);

            if (lstAct.Any())
            {
                foreach (var act in lstAct)
                {
                    try
                    {
                        act.Invoke();
                    }
                    catch
                    {
                        continue;
                    }
                }
            }
            return(res);
        }
Beispiel #4
0
        public virtual int Delete(string tableName, object pkValue)
        {
            if (!Info.IsExistTable(tableName))
            {
                return(-1);
            }
            string delSql = string.Empty;

            delSql = "delete from " + tableName + " where " + Info.TableInfoDict[tableName].PriKeyColName + "=" + ParameterSql(Info.TableInfoDict[tableName].PriKeyColName);
            int res    = ExecSql(delSql, new DbParameter[] { CreateParameter(Info.TableInfoDict[tableName].PriKeyColName, pkValue) });
            var lstAct = DataChangeTriggers.GetActions(tableName);

            if (lstAct.Any())
            {
                foreach (var act in lstAct)
                {
                    act.Invoke();
                }
            }
            return(res);
        }
Beispiel #5
0
        public virtual bool UpSingle(string tableName, string columnName, object columnValue, object pkOrUniqueValue, string pkOrUniqueColName = "Id")
        {
            string upSql = string.Empty;

            upSql = "update " + tableName + " set " + columnName + "=" + ParameterSql(columnName) + " where " + pkOrUniqueColName + "=" + ParameterSql(pkOrUniqueColName);

            var p1 = CreateParameter(columnName, columnValue, Info[tableName, columnName]);
            var p2 = CreateParameter(pkOrUniqueColName, pkOrUniqueValue, Info[tableName, pkOrUniqueColName]);

            bool res = ExecSql(upSql, new DbParameter[] { p1, p2 }) > 0;

            var lstAct = DataChangeTriggers.GetActions(tableName);

            if (lstAct.Any())
            {
                foreach (var act in lstAct)
                {
                    act.Invoke();
                }
            }
            return(res);
        }