Junior
Jakimi narzędziami pracowałeś z bazami danych?
sobes.tech AI
Odpowiedź od AI
Aby pracować z bazami danych, używałem następujących narzędzi:
- Klienci SQL:
- DBeaver
- SQL Developer
- pgAdmin
- Narzędzia wiersza poleceń:
psqlmysql
- Frameworki i biblioteki do automatyzacji testów:
- JDBC (dla Java)
- psycopg2 (dla Pythona, PostgreSQL)
- mysql-connector-python (dla Pythona, MySQL)
Najczęściej korzystałem z klientów SQL do ręcznego badania danych, pisania i wykonywania zapytań, a także z narzędzi wiersza poleceń i bibliotek do automatyzacji sprawdzania danych na poziomie API lub testów integracyjnych.
Przykłady zastosowania w automatyzacji:
// Sprawdzanie liczby rekordów w tabeli
public int getCountOfUsers(String username) {
String sql = "SELECT COUNT(*) FROM users WHERE username = ?";
try (Connection conn = DriverManager.getConnection(url, user, password);
PreparedStatement pstmt = conn.prepareStatement(sql)) {
pstmt.setString(1, username);
try (ResultSet rs = pstmt.executeQuery()) {
if (rs.next()) {
return rs.getInt(1);
}
}
} catch (SQLException e) {
e.printStackTrace(); // Logowanie błędów
}
return 0;
}
# Sprawdzanie wartości pola w rekordzie
def get_user_status(user_id):
conn = None
cursor = None
try:
conn = psycopg2.connect(database="mydatabase", user="myuser", password="mypassword", host="localhost")
cursor = conn.cursor()
cursor.execute("SELECT status FROM users WHERE id = %s", (user_id,))
result = cursor.fetchone()
if result:
return result[0]
return None
except (Exception, psycopg2.Error) as error:
print("Błąd podczas pobierania danych z PostgreSQL", error) # Logowanie błędów
return None
finally:
if cursor:
cursor.close()
if conn:
conn.close()