Exemplo n.º 1
0
        public virtual long ExecuteReturnBigIdentity()
        {
            if (this.InsertObjs.Count() == 1 && this.InsertObjs.First() == null)
            {
                return(0);
            }
            string sql    = _ExecuteReturnBigIdentity();
            long   result = 0;

            if (InsertBuilder.IsOleDb)
            {
                var isAuto = false;
                if (this.Context.CurrentConnectionConfig.IsAutoCloseConnection)
                {
                    isAuto = true;
                    this.Context.CurrentConnectionConfig.IsAutoCloseConnection = false;
                }
                result = Convert.ToInt64(Ado.GetScalar(sql.Split(';').First(), InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray()));
                result = Convert.ToInt64(Ado.GetScalar(sql.Split(';').Last(), InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray()));
                if (isAuto)
                {
                    this.Ado.Close();
                    this.Context.CurrentConnectionConfig.IsAutoCloseConnection = isAuto;
                }
            }
            else
            {
                result = Convert.ToInt64(Ado.GetScalar(sql, InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray()));
            }
            After(sql, result);
            return(result);
        }
Exemplo n.º 2
0
        public long ExecuteReturnBigIdentity()
        {
            InsertBuilder.IsReturnIdentity = true;
            PreToSql();
            string sql = InsertBuilder.ToSqlString();

            return(Convert.ToInt64(Ado.GetScalar(sql, InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray())));
        }
Exemplo n.º 3
0
        public virtual long ExecuteReturnBigIdentity()
        {
            InsertBuilder.IsReturnIdentity = true;
            PreToSql();
            AutoRemoveDataCache();
            string sql = InsertBuilder.ToSqlString();

            RestoreMapping();
            return(Convert.ToInt64(Ado.GetScalar(sql, InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray())));
        }
Exemplo n.º 4
0
        public override int ExecuteReturnIdentity()
        {
            InsertBuilder.IsReturnIdentity = true;
            PreToSql();
            string sql = InsertBuilder.ToSqlString().Replace("$PrimaryKey", this.SqlBuilder.GetTranslationColumnName(GetIdentityKeys().FirstOrDefault()));

            RestoreMapping();
            var result = Ado.GetScalar(sql, InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray()).ObjToInt();

            return(result);
        }
Exemplo n.º 5
0
        public override long ExecuteReturnBigIdentity()
        {
            InsertBuilder.IsReturnIdentity = true;
            PreToSql();
            string sql = InsertBuilder.ToSqlString().Replace("$PrimaryKey", GetIdentityKeys().FirstOrDefault());

            RestoreMapping();
            var result = Convert.ToInt64(Ado.GetScalar(sql, InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray()) ?? "0");

            return(result);
        }
Exemplo n.º 6
0
        public virtual long ExecuteReturnBigIdentity()
        {
            if (this.InsertObjs.Count() == 1 && this.InsertObjs.First() == null)
            {
                return(0);
            }
            string sql    = _ExecuteReturnBigIdentity();
            var    result = Convert.ToInt64(Ado.GetScalar(sql, InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray()));

            After(sql, result);
            return(result);
        }
Exemplo n.º 7
0
 private object GetSeqValue(string seqName)
 {
     try
     {
         return(Ado.GetScalar(" SELECT " + seqName + ".currval FROM DUAL"));
     }
     catch
     {
         Ado.GetScalar(" SELECT " + seqName + ".nextval FROM DUAL");
         return(Ado.GetScalar(" SELECT " + seqName + ".currval-1 FROM DUAL"));
     }
 }
Exemplo n.º 8
0
        public virtual long ExecuteReturnBigIdentity()
        {
            if (this.InsertObjs.Count() == 1 && this.InsertObjs.First() == null)
            {
                return(0);
            }
            InsertBuilder.IsReturnIdentity = true;
            PreToSql();
            AutoRemoveDataCache();
            string sql = InsertBuilder.ToSqlString();

            RestoreMapping();
            Before(sql);
            var result = Convert.ToInt64(Ado.GetScalar(sql, InsertBuilder.Parameters == null ? null : InsertBuilder.Parameters.ToArray()));

            After(sql, result);
            return(result);
        }
Exemplo n.º 9
0
 private object GetSeqValue(string seqName)
 {
     return(Ado.GetScalar(" SELECT " + seqName + ".currval FROM DUAL"));
 }