jdbc對資料庫操作的六個基本步驟:
//1.註冊資料庫驅動
//2.獲取資料庫連線
//3.獲取傳輸器物件
//4.利用傳輸器傳輸sql到資料庫執行,獲取結果集物件
//5.遍歷結果集,獲取結果資料
//6.關閉資源(這裡低層是將連線還回資料來源中)
statement和preparedstatement都可以作為執行sql語句的傳輸器。它們存在父子關係;preparedstatement是statement 父級。
在使用statement傳輸器時容易被使用者輸入sql關鍵字後導致後台sql被破壞,即sql注入攻擊。安全性並不高。
preparedstatement優點:
(1)可以防止sql注入攻擊, 採用預編譯機制, 先將sql語句的主幹傳送資料庫, 資料庫編譯後就確定了sql語句的語意, 如果後面引數中再包含sql關鍵字或者是特殊字元, 也只會當作普通的字元來處理!!!
(2)通過方法來設定引數, 省去了拼接sql語句的麻煩.
(3)能夠盡最大可能來提高效率. preparedstatement傳送的sql語句編譯後就被資料庫快取下來了, 再次執行時, 如果和快取中的匹配就會使用快取中的語句, 不再編譯, 直接執行. statement傳送的sql語句是先拼接好再傳送給資料庫, 由於引數不同整條sql語句也就不同, 所以每次都需要編譯.
statement對資料庫的增刪查改:
增加資料:
1public
static
void
add(connection conn,statement stat,resultset rs) catch
(exception e) finally
17 }
檢視資料:
1public
static
void
check(connection conn,statement stat,resultset rs)
1516 } catch
(sqlexception e) finally
2122 }
preparedstatement對資料的增刪查改:
增加資料:
publicstatic
void
add(connection conn,preparedstatement ps)
catch
(exception e)
finally
}
刪除資料:
publicstatic
void
del(connection conn,preparedstatement ps)
catch
(exception e)
finally
}
查資料:
publicstatic
void
check(connection conn,preparedstatement ps,resultset rs)
} catch
(exception e)
finally
}
Oracle 基本知識
乙個表空間只能屬於乙個資料庫 每個資料庫最少有乙個控制檔案 建議3個,分別放在不同的磁碟上 每個資料庫最少有乙個表空間 system表空間 建立system表空間的目的是盡量將目的相同的表存放在一起,以提高使用效率,只應存放資料字典 每個資料庫最少有兩個聯機日誌組,每組最少乙個聯機日誌檔案 乙個資料...
Oracle 基本知識
乙個表空間只能屬於乙個資料庫 每個資料庫最少有乙個控制檔案 建議3個,分別放在不同的磁碟上 每個資料庫最少有乙個表空間 system表空間 建立system表空間的目的是盡量將目的相同的表存放在一起,以提高使用效率 每個資料庫最少有兩個聯機日誌檔案 乙個資料檔案只能屬於乙個表空間 乙個資料檔案一旦被...
Oracle 基本知識
oracle 文章摘要 oracle 基本知識。正文 oracle 基本知識 乙個表空間只能屬於乙個資料庫 每個資料庫最少有乙個控制檔案 建議3個,分別放在不同的磁碟上 每個資料庫最少有乙個表空間 system表空間 建立system表空間的目的是盡量將目的相同的表存放在一起,以提高使用效率 每個資...