導航:首頁 > 編程語言 > java刪除資料庫數據

java刪除資料庫數據

發布時間:2023-05-30 05:54:36

java如何實現對數據表裡面的數據刪除(最好給個具體代碼範例)

連接資料庫
public class DBManager {
//定義資料庫連接的URL
private static final String URL="jdbc:sqlserver://localhost:1433;database=j1105";
//定義資料庫的用戶名
private static final String USERNAME = "sa";
//定義資料庫密碼
private static final String PASSWORD = "sa";
//定義一個連接的引用,使用單例模式
private static Connection conn = null;

//使用靜態塊來注冊驅動
//類載入時自動執行代碼塊
static {
//反射com.microsoft.sqlserver.jdbc.SQLServerDriver.class
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}

//獲得連接
//在程序使用過程中始終只有1個對象存在
//使用單例模式來給Connection賦值
public static Connection getConnection(){
if(conn == null){
try {
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
} catch (SQLException e) {
e.printStackTrace();
}
}
return conn;
}
/**
* 關閉的一些操作 , 優化
* @param conn
* @param stat
* @param rs
*/
public static void close(Connection conn,Statement stat,ResultSet rs){
try{
if(conn != null){
conn.close();
}
if(stat != null){
stat.close();
}
if(rs != null){
rs.close();
}
}catch(SQLException e){
e.printStackTrace();
}
}
/**
* 重寫上面的方法,在只有2個參數的情況下關閉
* @param conn
* @param stat
*/
public static void close(Connection conn,Statement stat){
try{
if(conn != null){
conn.close();
}
if(stat != null){
stat.close();
}
}catch(SQLException e){
e.printStackTrace();
}
}

public static void main(String[] args){
Connection conn = DBManager .getConnection();
System.out.println(conn);
}
}

介面
public interface IStudentDao {

public void deleteStudent(int xh);
}
實現
public class StudentDAOimpl implements IStudentDao {
public void deleteStudent(int xh) {
try{
String sql = "delete from tb_student where xh = ?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setInt(1, xh);
ps.executeUpdate();
System.out.println("成功刪除");
}catch(SQLException e){
e.printStackTrace();
}
}
}

Ⅱ 用JAVA資料庫表的刪除方法應該怎麼寫啊*(新手)

頁面時JSP頁面吧,從資料庫中讀取的數據應該是分頁顯示出來的如果你的頁面的數據記錄的條數是pageSize個 JSP頁面:for(int i=0;i<pageSize;i++){ <input type=checkbox name=<%=i %> value=<%=id %>>記錄內容 // 循環顯示每條記錄並加入復選框,id是表的主碼
}點擊刪除按鈕後進入一個Servlet控制器String id=null;for(int i=0;i<pageSize;i++){ id=request.getParameter(i+""); if(id!=null){ 刪除記錄方法(String id); }}在model中再寫一個根據ID刪除記錄的類.方法就OK了 很好寫 我就不寫了

Ⅲ java開發中不能真正的把數據刪除要進行假的刪除怎麼實現

假的刪除,即邏輯刪除團橡橋,而邏輯刪除實際上並非刪除操作,設計表的時候,資料庫設置一個欄位,0為未刪除,1為已刪除,要刪除時將這個欄位改為1,查找時查找0的。學習java開發推薦到千鋒教育,千鋒教研院聯合國內一線互聯網企業深化產業變革,共同打造互聯網技術生態共同體,值得選擇。

做java開發時,常出現的錯誤有以下幾點:
1.Duplicated Code
代碼重復可謂是十分常見的問題。他也是Refactoring的如培主要目標之一。
2.忽視異常
針對初學者和有經驗的 Java 程序員,建議還不要忽視異常。異常拋出通常是帶有目的性的,因此在大多數情況下需要記錄引起異常的事件。
3.Hashtable vs HashMap
演算法中,哈希表是數據結構的名稱。但在Java中,數據結構的名字是HashMap中。其中一個Hashtable和HashMap的之間的主要區別是,Hashtable是同步的。

想要了解更多有關java開發的相關信息,推薦咨詢千鋒教育。千鋒勵精圖治,不改教育初心。十一年來,千鋒以政策為引導,不斷完善國內特色現代職業教育體系建設,充分發揮教研師資隊伍使命,構建品質教育,加大創新型人才培養力度,為經濟發展提供智力人才和智力支撐,成為新時期職塌猛業教育發展的新方向,在同行業中有很高的美譽度。實力強大,請每位學員放心選擇!

Ⅳ Java怎麼從界面上刪除資料庫里的內容

使用JDBC
步驟:
1.注冊驅動 Class.forName("com.mysql.jdbc.Driver");

2.建立手虧連接 Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8","用戶名","密碼");

3.創建執行語句 PreparedStatement ps=conn.prepareStatement(sql);

4.執行得到結果集 ResultSet rs=ps.executeQuery();/則改/ 查詢語句
ResultSet rs=ps.executeUpdate();// 更新語句

5.處畢盯神理結果集(遍歷結果集)
while (rs.next()) {rs.getString("表欄位名");}

6.關閉結果集、關閉連接
rs.close()、conn.close();

Ⅳ JAVA中 刪除Mysql資料庫中數據應該怎麼寫

您的SQL語法錯誤,檢查手冊,對應於你的MySQL語法的正確使用伺服器版本位於第1行近'其中ID
=
'71201'

語法錯誤,你看看ID是不是主鍵,如果是主鍵的話,那就是主外鍵關聯所以刪除失敗!

Ⅵ JAVA中刪除資料庫數據,根據數組刪除,怎麼寫。 方法:public void delete(int[] ids) {

public void delete(int[] id) throws SQLException{
//假定conn ps 都獲取到肆銷
Connection conn=null;
StringBuffer sql=new StringBuffer("delete from school where id in("兄雹基);
for (int i = 0; i < id.length; i++) {
if (i==id.length-1)
sql.append(id[i]+")");
else
sql.append(id[i]+"羨謹,");
}
PreparedStatement ps=conn.prepareStatement(sql.toString());
ps.execute();
}

Ⅶ java循環刪除mysql數據越來越慢

在 Java 中,循環刪除 MySQL 數據時,可能會出納遲現刪除操作變慢的情況。這通常是由於循環過程中頻繁地創建和銷毀資料庫連接對象導致的。每次循環都需要創建新的連接對象、執行刪除操作,然後關閉連接對象,這個過程非常耗費時間和系統資源。

為了解決這個問題,可以考慮使用批量刪除的方式來替代循環刪除。具體來說,可以先將需要刪除的數據保存到一個集合中,然後在一次性地使用 DELETE 語句批量刪除這些數據。這樣就可以大大減少創建和銷毀連接對象的次數,從而提高刪除效率。洞散李

以下是一個示例代碼,演示如何使用批量刪除來優化循環刪除:

// 將需要刪除的數據保存到一個集合中
List<Integer> idsToDelete = new ArrayList<>();
idsToDelete.add(1);
idsToDelete.add(2);
idsToDelete.add(3);
// ...
// 使用批量刪除的方式來刪除數據
Connection conn = null;
PreparedStatement pstmt = null;
try {
conn = DriverManager.getConnection(url, user, password);
pstmt = conn.prepareStatement("DELETE FROM table_name WHERE id = ?");
conn.setAutoCommit(false);
for (Integer id : idsToDelete) {
pstmt.setInt(1, id);
pstmt.addBatch();
}
pstmt.executeBatch();
conn.commit();
} catch (SQLException e) {
if (conn != null) {
conn.rollback();
}
e.printStackTrace();
} finally {
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
}

在上面的代碼中,首掘行先將需要刪除的數據保存到一個 List 對象 idsToDelete 中。然後,使用 PreparedStatement 對象 pstmt 來執行批量刪除操作。在循環中,將每個需要刪除的 ID 值設置到 SQL 語句中的參數中,然後調用 pstmt.addBatch() 方法將該語句添加到批量執行隊列中。最後,調用 pstmt.executeBatch() 方法一次性執行所有添加到隊列中的 SQL 語句,從而實現批量刪除。

需要注意的是,批量刪除操作需要手動開啟事務,並且需要在最後調用 conn.commit() 方法提交事務。如果在執行批量刪除過程中出現異常,需要調用 conn.rollback() 方法回滾事務,以保證數據的一致性。

Ⅷ 在java中如何刪除資料庫

1鏈接資料庫(導入驅動)
2寫實現刪除的代碼
java
純技術群277263851
支持招聘信息
(支持資料庫,前端)
java
聊群
333247407

Ⅸ java關系資料庫基礎的,資料庫表數據刪除兩種語法的區別是什麼

資料庫刪除語句的分別介紹:
Delete:用於刪除表中的行(註:可以刪除某一行;也可以在不刪除表的情況下(即意味著表的結構、屬性、索引完整)刪除所有行)
語法:刪除某一行:Delete
From
表名稱
Where
列名稱=值
刪除所有行:
Delete
From
表名稱

Delete
*
From
表名稱
Drop:用於刪除表(註:將表的結構、屬性、索引也會被友告刪除。)
語法:Drop
Table
表名稱
Truncate:用於刪除表內的數據(註:僅刪除表內的數據,不刪除表本身,相當於Delete語句不寫Where子句一樣)
語法:Truncate
Table
表名稱
資料庫中刪除語句的相同點和不同點的比較:
相同點:
1.truncate和不帶where子句的delete,以及drop都能刪除表內的數據
2.truncate和delete只刪除表數據保留表結構
不同點:
1.
truncate
table
tablename
刪除表內容釋放表空間保留表結構(即:只刪除表內咐告螞的數據,不刪除表本身。相當於Delete語句不寫where子句一樣),不使衡埋用事務處理即和事務無關
truncate
語句預設情況下將空間釋放到
minextents個
extent,
除非使用reuse
storage;truncate
會將高水線復位(回到最開始)。
2.
delete
table
tablename
[where子句]
delete屬於數據操作語言(DML),不能自動提交事務,需commit提交
這個操作會放到
rollback
segement
中,事務提交之後才生效;
如果有相應的
trigger,執行的時候將被觸發。
delete
語句不影響表所佔用的
extent,高水線(high
watermark)保持原位置不動
3.
drop
table
tablename
drop屬於數據定義語言(DDL)可以自動提交事務;
drop
語句將刪除表的結構被依賴的約束(constrain)、觸發器(trigger)、索引(index)【刪除表數據同時刪除表結構】;
依賴於該表的存儲過程/函數將保留,但是變為
invalid
狀態。
drop
語句將表所佔用的空間全部釋放。
刪除數據的速度,一般來說:
drop>
truncate
>
delete
使用場合:
當你不再需要該表時,

drop;
當你仍要保留該表,但要刪除所有記錄時,

truncate;
當你要刪除部分記錄時(always
with
a
where
clause),

delete.
注意:
對於有主外鍵關系的表,不能使用truncate而應該使用不帶where子句的delete語句,由於truncate不記錄在日誌中,不能夠激活觸發器

閱讀全文

與java刪除資料庫數據相關的資料

熱點內容
unix命令rename 瀏覽:864
文件加密了為啥發不出去了 瀏覽:457
單片機調節馬達 瀏覽:743
鏡花pdf 瀏覽:610
廣西民族大學app忘記密碼怎麼辦 瀏覽:374
學生伺服器是什麼意思 瀏覽:533
如何下載快切app 瀏覽:723
如何將電腦c盤文件加密 瀏覽:886
嵌入式為什麼linux 瀏覽:553
c語言編譯器屬於系統軟體 瀏覽:725
android如何斷點調試 瀏覽:722
圖解韓語pdf 瀏覽:302
sas查各文件夾空間大小 瀏覽:454
python腳本檢查埠 瀏覽:960
催眠解壓視頻泡沫 瀏覽:309
雲伺服器部署系統 瀏覽:879
惡意加密別人的文件犯法 瀏覽:833
漢語語法pdf 瀏覽:158
詞法分析編譯原理論文 瀏覽:271
電腦文件夾還原方法 瀏覽:534