什么是MySQL?
MySQL是一個(gè)開源的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),廣泛應(yīng)用于互聯(lián)網(wǎng)應(yīng)用中。它使用標(biāo)準(zhǔn)SQL語言來管理和操作數(shù)據(jù)。
如何在程序中使用MySQL?
要在程序中使用MySQL,需要先安裝MySQL數(shù)據(jù)庫,并建立一個(gè)數(shù)據(jù)庫。然后可以使用各種編程語言(如Java、Python、PHP等)提供的MySQL連接驅(qū)動(dòng)程序來連接到數(shù)據(jù)庫,并發(fā)送SQL語句執(zhí)行數(shù)據(jù)庫操作。
連接到MySQL數(shù)據(jù)庫
連接到MySQL數(shù)據(jù)庫需要使用相應(yīng)的連接字符串和用戶名密碼,例如:
jdbc:mysql://localhost:3306/mydb
Connection conn = DriverManager.getConnection(url, username, password);
執(zhí)行SQL語句
執(zhí)行SQL語句有兩種方式:預(yù)編譯和直接執(zhí)行。預(yù)編譯方式可以提高程序的性能和安全性,避免SQL注入攻擊。
預(yù)編譯方式示例:
String sql = "SELECT * FROM users WHERE id=? AND name=?";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, 123);
pstmt.setString(2, "John");
ResultSet rs = pstmt.executeQuery();
處理數(shù)據(jù)庫結(jié)果
執(zhí)行SQL語句后會(huì)返回一個(gè)ResultSet對(duì)象,包含查詢結(jié)果??梢允褂肦esultSet的方法來遍歷結(jié)果集,例如:
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
}
關(guān)閉數(shù)據(jù)庫連接
使用完數(shù)據(jù)庫后必須關(guān)閉連接,以釋放資源。可以使用try-with-resources語句來自動(dòng)關(guān)閉連接:
try (Connection conn = DriverManager.getConnection(url, username, password);
Statement stmt = conn.createStatement()) {
stmt.execute("DROP TABLE IF EXISTS users");
}