コード例 #1
0
        private List <RelationalIndexOption> GetRelationalIndexOptionsList()
        {
            var options = new List <RelationalIndexOption>();

            do
            {
                RelationalIndexOption option;

                if (Tokenizer.IsNextToken(Constants.PadIndex, Constants.SortInTempDb, Constants.IgnoreDupKey,
                                          Constants.StatisticsNorecompute, Constants.DropExisting, Constants.Online,
                                          Constants.AllowRowLocks, Constants.AllowPageLocks))
                {
                    string optionName = Tokenizer.Current.Value;
                    Tokenizer.ReadNextToken();

                    Tokenizer.ExpectToken(Constants.Assignment);

                    if (!Tokenizer.IsNextToken(Constants.On, Constants.Off))
                    {
                        throw new SyntaxException("expects ON or OFF");
                    }

                    option            = new RelationalIndexOption();
                    option.Option     = _optionMap[optionName];
                    option.Assignment = new StringExpression(Tokenizer.Current.Value, null);

                    Tokenizer.ReadNextToken();

                    options.Add(option);
                }
            } while (Tokenizer.TokenEquals(Constants.Comma));

            return(options);
        }
コード例 #2
0
 private string FormatIndexOptions(RelationalIndexOption option)
 {
     return(string.Format("{0} = {1}", _indexOptionMap[option.Option], option.Assignment.Value));
 }