// +CreateSymbolByName(SymbolName : string = "UNKNOWN", AcceptDuplicates : boolean = 0, ResultedSymbol : List<int[2]>) public List<SOperator> CreateOperatorByName(string OperatorName, bool AcceptDuplicates) { if (!AcceptDuplicates) { List<SOperator> ExistentSymbols = GetOperatorsByName(OperatorName, 0, 10); if (ExistentSymbols.Count > 0) return ExistentSymbols; } List<SOperator> ResultedSymbols = new List<SOperator>(); int[] symbolPosition = { 0, 0, 0, 0 }; try { //DEFAULT und NULL sind nicht als explizite Identitätswerte zulässig string commandString = "INSERT INTO [simbs] ([En]) OUTPUT INSERTED.ID VALUES ('" + OperatorName + "') "; SqlCommand mySqlCommand = new SqlCommand(commandString, SqlServerConnection); SqlDataReader myReader = mySqlCommand.ExecuteReader(); int LastInsertedId = 0; //if (MySqlTrace) SQLView.Log(mySqlCommand.CommandText); while (myReader.Read()) { if (myReader.GetInt32(0) > -1) { SOperator symbolID = new SOperator(); LastInsertedId = myReader.GetInt32(0); symbolID.OperatorId = LastInsertedId; if (symbolID.OperatorId != 0 || symbolID.OperatorId != 0) { ResultedSymbols.Add(symbolID); } } } myReader.Close(); //if (SqlTrace) SQLView.Log(mySqlCommand.CommandText); if (LastInsertedId > 0) { string commandString2 = "UPDATE [simbs] SET [IR] = [ID] WHERE [ID] = " + LastInsertedId + " ;"; SqlCommand mySqlCommand2 = new SqlCommand(commandString2, SqlServerConnection); mySqlCommand2.ExecuteNonQuery(); symbolPosition[0] = LastInsertedId; //ResultedSymbols.Add(symbolPosition); } } catch (SqlException retrieveSymbolIndexException) { Console.WriteLine("Error: {0}", retrieveSymbolIndexException.ToString()); } CreateSymbolTable(symbolPosition); //if (MyResultsTrace) SQLView.LogResult(symbolPosition); return ResultedSymbols; }
public List<SOperator> GetAllOperators() { List<SOperator> resultedOperators = new List<SOperator>(); try { string commandString = "SELECT `IR`, `Var`, `IR2`, `Var2` FROM `" + DB + "`.`srel` "; MySql.Data.MySqlClient.MySqlCommand mySqlCommand = new MySqlCommand(commandString, mySQLConnection); MySqlDataReader myReader = mySqlCommand.ExecuteReader(); //if (MySqlTrace) SQLView.Log(mySqlCommand.CommandText); //List<string[]> list = (from IDataRecord r in myReader // select (string)r["IR"] // ).ToList(); while (myReader.Read()) { if (!string.IsNullOrEmpty(myReader.GetString(0))) { int[] symbID = new int[]{0,0,0,0,0,0}; int.TryParse(myReader.GetString(0), out symbID[0]); int.TryParse(myReader.GetString(1), out symbID[1]); int.TryParse(myReader.GetString(2), out symbID[4]); int.TryParse(myReader.GetString(3), out symbID[5]); if (symbID[0] != 0 || symbID[1] != 0) { SOperator sOperator = new SOperator(); sOperator.IR = symbID[0]; sOperator.VAR = symbID[1]; sOperator.IR2 = symbID[2]; sOperator.VAR2 = symbID[3]; if (sOperator.IR != 0 || sOperator.VAR != 0) { resultedOperators.Add(sOperator); } } } } myReader.Close(); } catch (MySqlException retrieveSymbolIndexException) { Console.WriteLine("Error: {0}", retrieveSymbolIndexException.ToString()); } if (MyResultsTrace) { //foreach (int[] i in allRelations) { //ResultLog += " [" + i[0] + ":" + i[1] + "]"; } //SQLView.LogResult(new string[] { ResultLog }); } return resultedOperators; }
// +GetSymbolsByName(SymbolsNamePart : string = "", Method : int = 0, LimitOfResults : int = 10, ResultedSymbols : List<int[2]>) public List<SOperator> GetOperatorsByName(string OperatorNamePart, int Mode, int LimitOfResults = 10) { List<SOperator> ResultedOperators = new List<SOperator>(); try { string commandString; switch (Mode) { case 0: // strict commandString = "SELECT IR, VAR, IR2, VAR2 FROM " + OracleDB + ".SREL WHERE EN LIKE '" + OperatorNamePart + "' "; break; case 1: // starting with commandString = "SELECT IR, VAR, IR2, VAR2 FROM " + OracleDB + ".SREL WHERE EN LIKE '" + OperatorNamePart + "%' "; break; case 2: // containing commandString = "SELECT IR, VAR, IR2, VAR2 FROM " + OracleDB + ".SREL WHERE EN LIKE '%" + OperatorNamePart + "%' "; break; case 3: // ending with commandString = "SELECT IR, VAR, IR2, VAR2 FROM " + OracleDB + ".SREL WHERE EN LIKE '%" + OperatorNamePart + "' "; break; default: commandString = "SELECT IR, VAR, IR2, VAR2 FROM " + OracleDB + ".SREL WHERE EN LIKE '" + OperatorNamePart + "' "; break; } //if (LimitOfResults != 0) { commandString += " Limit " + LimitOfResults + " "; } OracleCommand OracleCommand = new OracleCommand(commandString, OracleConnection); OracleDataReader myReader = OracleCommand.ExecuteReader(); ////if (OracleTrace) SQLView.Log(OracleCommand.CommandText); while (myReader.Read()) { if (!myReader.IsDBNull(0)) { SOperator sOperator = new SOperator(); sOperator.IR = (int)myReader.GetDecimal(0); sOperator.VAR = (int)myReader.GetDecimal(1); sOperator.IR2 = (int)myReader.GetDecimal(2); sOperator.VAR2 = (int)myReader.GetDecimal(3); if (sOperator.IR != 0 || sOperator.VAR != 0) { ResultedOperators.Add(sOperator); } } } myReader.Close(); } catch (OracleException retrieveSymbolIndexException) { Console.WriteLine("Error: {0}", retrieveSymbolIndexException.ToString()); } if (MyResultsTrace) { string ResultLog = ""; foreach (SOperator i in ResultedOperators) { ResultLog += " [" + i.OperatorId + ":" + "0" + "]"; } //SQLView.LogResult(new string[] { ResultLog }); } if (ResultedOperators.Count < 1 && Mode == 0 && AcceptSymbols) { List<SOperator> CreatedSymbols = new List<SOperator>(); //CreatedSymbols = CreateSymbolByName(OperatorNamePart, true); ResultedOperators = CreatedSymbols; } // Name Operators foreach (SOperator sOperator in ResultedOperators) { sOperator.OperatorNames = GetRelationOperatorNameByID(sOperator); } return ResultedOperators; }
public List<SOperator> GetAllOperators() { List<SOperator> resultedOperators = new List<SOperator>(); try { string commandString = "SELECT IR, VAR, IR2, VAR2 FROM " + OracleDB + ".SREL "; OracleCommand OracleCommand = new OracleCommand(commandString, OracleConnection); OracleDataReader myReader = OracleCommand.ExecuteReader(); ////if (OracleTrace) SQLView.Log(OracleCommand.CommandText); //List<string[]> list = (from IDataRecord r in myReader // select (string)r["IR"] // ).ToList(); while (myReader.Read()) { if (!myReader.IsDBNull(0)) { SOperator sOperator = new SOperator(); sOperator.IR = (int)myReader.GetDecimal(0); sOperator.VAR = (int)myReader.GetDecimal(1); sOperator.IR2 = (int)myReader.GetDecimal(2); sOperator.VAR2 = (int)myReader.GetDecimal(3); if (sOperator.IR != 0 || sOperator.VAR != 0) { resultedOperators.Add(sOperator); } } } myReader.Close(); } catch (OracleException retrieveSymbolIndexException) { Console.WriteLine("Error: {0}", retrieveSymbolIndexException.ToString()); } foreach (SOperator operatorSymbol in resultedOperators) { operatorSymbol.OperatorNames = GetRelationOperatorNameByID(operatorSymbol, 0, 10); } if (MyResultsTrace) { string ResultLog = ""; //foreach (int[] i in allRelations) { //ResultLog += " [" + i[0] + ":" + i[1] + "]"; } //SQLView.LogResult(new string[] { ResultLog }); } return resultedOperators; }
//+GetRelationNamesByID(RelationlID : int [4] = {0,0,0,0}, int Mode = 0; LimitOfResults : int = 10, ResultedRelationNames : List<string>) /// <summary> /// /// </summary> /// <param name="sOperator"></param> /// <param name="Mode"></param> /// <param name="LimitOfResults"></param> /// <returns></returns> public List<string> GetRelationOperatorNameByID(SOperator sOperator, int Mode = 0, int LimitOfResults = 10) { List<string> ResultedRelationNames = new List<string>(); //if () // return for invalid ids try { string commandString = ""; switch (Mode) { case 0: // strict commandString = "SELECT En FROM " + OracleDB + ".srel WHERE IR = " + sOperator.IR + " AND Var = " + sOperator.VAR + " AND IR2 = " + sOperator.IR2 + " AND Var2 = " + sOperator.VAR2 + " "; break; } //if (LimitOfResults != 0) { commandString += " Limit " + LimitOfResults + " "; } OracleCommand OracleCommand = new OracleCommand(commandString, OracleConnection); OracleDataReader myReader = OracleCommand.ExecuteReader(); //if (OracleTrace) SQLView.Log(OracleCommand.CommandText); while (myReader.Read()) { if (!string.IsNullOrEmpty(myReader.GetString(0))) { string symbolName; symbolName = myReader.GetString(0).ToString(); if (!string.IsNullOrEmpty(symbolName)) { ResultedRelationNames.Add(symbolName); } } } myReader.Close(); } catch (OracleException retrieveSymbolIndexException) { Console.WriteLine("Error: {0}", retrieveSymbolIndexException.ToString()); } if (MyResultsTrace) { string ResultLog = ""; foreach (string i in ResultedRelationNames) { ResultLog += " " + i + " "; } //SQLView.LogResult(ResultLog); } return ResultedRelationNames; }