コード例 #1
0
        protected override void BuildCommand(int commandNumber, StringBuilder sb)
        {
            SequenceNameAttribute attr = GetSequenceNameAttribute();

            AppendIndent(sb)
            .Append("SELECT currval('")
            .Append(attr.SequenceName)
            .AppendLine("')");
        }
コード例 #2
0
        protected override void BuildCommand(int commandNumber, StringBuilder sb)
        {
            SequenceNameAttribute attr = GetSequenceNameAttribute();

            AppendIndent(sb)
            .Append("SELECT gen_id(")
            .Append(attr.SequenceName)
            .AppendLine(", 0) FROM rdb$database");
        }
コード例 #3
0
        public override ISqlExpression GetIdentityExpression(SqlTable table, SqlField identityField, bool forReturning)
        {
            if (table.SequenceAttributes != null)
            {
                SequenceNameAttribute attr = GetSequenceNameAttribute(table, false);

                if (attr != null)
                {
                    return(new SqlExpression(attr.SequenceName + ".nextval", Precedence.Primary));
                }
            }

            return(base.GetIdentityExpression(table, identityField, forReturning));
        }