public static KeyValuePair <string, dynamic> sql_selector(string sql) { string[] seperated_query = sql.Split(); if (string.Compare(seperated_query[0].ToLower(), "create", true) == 0) { SqlGrammar.Sql_Table table = CreateTable(sql); return(new KeyValuePair <string, dynamic>("create", table)); } else if (string.Compare(seperated_query[0].ToLower(), "insert", true) == 0) { //Console.WriteLine("Inserting"); SqlGrammar.Sql_Insertion Insertion = Insert(sql); return(new KeyValuePair <string, dynamic>("Inserting", Insertion)); //public string table; //public List<string> AttrNames; //public List<dynamic> AttrValues; } else if (string.Compare(seperated_query[0].ToLower(), "select", true) == 0) { //Console.WriteLine("Inserting"); SqlObjects.Sql_Select selection = Parser.Select(sql + ";"); return(new KeyValuePair <string, dynamic>("select", selection)); //public string table; //public List<string> AttrNames; //public List<dynamic> AttrValues; } else if (string.Compare(seperated_query[0].ToLower(), "create index") == 0) { SqlObjects.SQL_Index Indexing = Parser.Index(sql); return(new KeyValuePair <string, dynamic>("index", Indexing)); } else { if (sql == string.Empty) { return(new KeyValuePair <string, dynamic>("empty", null)); } else { return(new KeyValuePair <string, dynamic>("unKnown", null)); } } }
public static void transInserting(TableManager tableManager, SqlGrammar.Sql_Insertion Insertion) { Dictionary <string, dynamic> tuple = new Dictionary <string, dynamic>(Constants.MAX_ATTR_NUM); if (Insertion != null) { if (Insertion.AttrNames.Count == 0) //AttrNames equal null { List <string> AttrOrder = tableManager.getTable(Insertion.table).getAttributesOrder(); for (int i = 0; i < Insertion.AttrValues.Count; i++) { tuple.Add(AttrOrder[i], Insertion.AttrValues[i]); } } else { for (int i = 0; i < Insertion.AttrNames.Count; i++) { tuple.Add(Insertion.AttrNames[i], Insertion.AttrValues[i]); } } tableManager.insert(Insertion.table, tuple); } }