public string submitQuerySQL(string sql, out DataTable answerSet) { SqlQuery rawQuery = new SqlQuery(sql); QueryType qType = rawQuery.ProcessType(); answerSet = null; switch (qType) { case QueryType.INSERT: var query = new SqlInsertQuery(sql); query.ProcessAndPopulateEachField(); var iHandler = new InsertQueryHandler(query, underlineDatabase); answerSet = iHandler.HandleInsertQuery(); break; case QueryType.SELECT: var squery = new SqlSelectQuery(sql); var sHandler = new SelectQueryHandler(squery, underlineDatabase); answerSet = sHandler.HandleSelectSqlQuery(); break; case QueryType.CREATE: var cquery = new SqlCreateTableQuery(sql); var handler = new CreateTableHandler(cquery,underlineDatabase); answerSet = handler.HandleCreateTableQuery(); break; default: break; } return "end of submitSQL function"; }
public void TestNormalSqlCreateTable() { string sentences = "CREATE TABLE Car (RegId int, Colour varchar(255), Mileage float)"; SqlCreateTableQuery query = new SqlCreateTableQuery(sentences); Assert.IsTrue(query.TableName == "Car"); Assert.IsTrue(query.AttributeNames.Count == 3); Assert.IsTrue(query.AttributeNames[0] == "RegId"); Assert.IsTrue(query.AttributeNames[1] == "Colour"); Assert.IsTrue(query.AttributeNames[2] == "Mileage"); Assert.IsTrue(query.AttributeTypes[0] == "int"); Assert.IsTrue(query.AttributeTypes[1] == "varchar(255)"); Assert.IsTrue(query.AttributeTypes[2] == "float"); }