FAManagementStudio.Models.DatabaseInfo.GetSequences C# (CSharp) Method

GetSequences() public method

public GetSequences ( FirebirdSql.Data.FirebirdClient.FbConnection con ) : IEnumerable
con FirebirdSql.Data.FirebirdClient.FbConnection
return IEnumerable
        public IEnumerable<SequenceInfo> GetSequences(FbConnection con)
        {
            using (var command = con.CreateCommand())
            {
                command.CommandText =
                     "execute block " +
                     "returns(GeneratorName char(31), CurrentValue bigint) " +
                     "as " +
                     "begin " +
                     "for select rdb$generator_name from rdb$generators where rdb$system_flag = 0 into GeneratorName do " +
                     "begin " +
                       "execute statement 'select gen_id(' || GeneratorName || ', 0) from rdb$database' into CurrentValue; " +
                     "suspend; " +
                     "end " +
                     "end; ";
                var reader = command.ExecuteReader();
                while (reader.Read())
                {
                    var name = (string)reader["GeneratorName"];
                    var value = (long)reader["CurrentValue"];
                    yield return new SequenceInfo(name, value);
                }
            }
        }