private string generateUpdateQuery(string dbName, DataGridCell cell) { int columnIndex = cell.getCellIndex(cellIndexTypes.columnIndex); CellConverter cellConverter = new CellConverter(); string columnName = queryData.getHeaders()[columnIndex]; string primaryKeyColumnName = queryData.getHeaders()[0]; //kluczem głównym MUSI być pierwsza kolumna object primaryKey = dg1Handler.getCellPrimaryKey(cell); string newValue = cellConverter.getConvertedValue(ref cell); if (newValue == null) { return("update " + dbName + " set " + columnName + "= null" + " where " + primaryKeyColumnName + "='" + primaryKey.ToString() + "'"); } return("update " + dbName + " set " + columnName + "=" + cellConverter.getConvertedValue(ref cell) + " where " + primaryKeyColumnName + "='" + primaryKey.ToString() + "'");; }
private void setUpDatagrid() { //pierwsza kolumna nie jest do edycji, w niej musi być primaryKey; dataGridView1.Columns[0].ReadOnly = true; dataGridView1.Columns[0].DefaultCellStyle.BackColor = Color.LightGray; DBReader reader = new DBReader(dbConnection); queryData = reader.readFromDB(sqlQuery); //jeżeli kwerenda błędna to nie zwróci wyników //przypadki błędnej kwerendy obsługiwane są przez DBReader if (queryData.getHeaders().Count != 0) { dbData = queryData.getQueryData(); List <string> columnHeaders = queryData.getHeaders(); //dopasowuję formatkę do wyników nowej kwerendy changeMainFormLayout(columnHeaders.Count, ref dataGridView1); //nazywam nagłówki for (int i = 0; i < queryData.getHeaders().Count; i++) { dataGridView1.Columns[i].HeaderText = columnHeaders[i]; } } if (dbData != null) { loadRowPacket(); if (rowsLoaded < dbData.Count) { int rowsRemaining = dbData.Count - rowsLoaded; loadNextButton.Visible = true; loadNextButton.Enabled = true; remainingRowsLabel.Visible = true; remainingRowsLabel.Text = "zostało " + rowsRemaining; if (rowsRemaining > ProgramSettings.numberOfRowsToLoad) { loadNextButton.Text = "+" + ProgramSettings.numberOfRowsToLoad; } } } }
private bool verifyUser() { if (readUserata()) { if (userData.getHeaders().Count > 0) //niczego nie przeczytał bo brak loginu, uprawnień do bazy danych, złe hasło itp błąd kwerendy { return(true); } } return(false); }