private void explainSelect() { bool disconnect = false; string sql = this.sql; if (sql == null && this.composer != null) { sql = this.composer.getSelect(); } sql = "EXPLAIN " + sql; if (!this.db.isConnected()) { disconnect = true; this.db.connect(); } this.Data = db.selectAsHash(sql); if (disconnect) { db.disConnect(); } }
public void readKeys(MysqlHandler database) { bool closeConnect = false; if (!database.isConnected()) { closeConnect = true; database.connect(); } assignValues(database.selectAsHash("SHOW INDEX FROM " + this.tableName)); if (closeConnect) { database.disConnect(); } }
/// <summary> /// Reads all Procedures and updates /// the content /// </summary> /// <param name="database">Used database Connection</param> public void getProcedures(MysqlHandler database) { isError = false; errorMessage = ""; bool closeConnection = false; if (!database.isConnected()) { closeConnection = true; database.connect(); } if (database.isConnected()) { // MySql.Data.MySqlClient.MySqlDataReader data = database.sql_select(MysqlProcedures.readQuery); List <Hashtable> data = database.selectAsHash(MysqlProcedures.readQuery); if (database.lastSqlErrorMessage != "") { isError = true; errorMessage = database.lastSqlErrorMessage; return; } spList.Clear(); count = 0; current = 0; isLoaded = false; for (int i = 0; i < data.Count; i++) { Hashtable tmpData = data[i]; StoredProcedure tmpStore = new StoredProcedure(); count++; isLoaded = true; if (tmpData["Db"] != null) { tmpStore.db = tmpData["Db"].ToString(); } if (tmpData["Name"] != null) { tmpStore.name = tmpData["Name"].ToString(); } if (tmpData["Type"] != null) { tmpStore.type = tmpData["Type"].ToString(); } if (tmpData["Definer"] != null) { tmpStore.definer = tmpData["Definer"].ToString(); } if (tmpData["Modified"] != null) { tmpStore.modified = tmpData["Modified"].ToString(); } if (tmpData["Created"] != null) { tmpStore.created = tmpData["Created"].ToString(); } if (tmpData["Security_type"] != null) { tmpStore.securityType = tmpData["Security_type"].ToString(); } if (tmpData["Comment"] != null) { tmpStore.created = tmpData["Comment"].ToString(); } getCreate(tmpStore, database); spList.Add(tmpStore); } } else { throw new Exception("MysqlProcedures: can not connect to Database"); } if (closeConnection) { database.disConnect(); } }