Skip to content

Commit aea59b2

Browse files
committed
added delete one record
and added search recordId for employee
1 parent d5fe872 commit aea59b2

3 files changed

Lines changed: 66 additions & 2 deletions

File tree

db-example/src/main/java/Main.java

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import config.DbConnectionManagement;
22
import entity.Employee;
3+
import query.DeleteQueryApi;
34
import query.InsertQueryApi;
45
import query.SelectQueryApi;
56

@@ -9,11 +10,33 @@
910

1011
public class Main {
1112
public static void main(String[] args) {
12-
1313
try {
14-
Employee tempEmployee = new Employee("Ahmet", "Aksoy", "M", new Date(), new Date());
14+
//database'e baglantı kurar ve bir adet connection nesnesi yaratır
1515
Connection connection = DbConnectionManagement.connectToDatabase();
16+
17+
18+
/*10 idli kayıdın silme işlemini yapar
19+
20+
DeleteQueryApi.deleteRecord(10, connection);
21+
*/
22+
23+
/* verilen id'nin veri tabanında olup olmadıgını kontrol eder
24+
25+
if (SelectQueryApi.findByEmployeeId(10, connection)!=null) {
26+
System.out.println("Kayıt bulundu");
27+
} else {
28+
System.out.println("Kayıt bulunamadı");
29+
}
30+
31+
*/
32+
33+
/* yeni kayıt ekleme yapar
34+
35+
Employee tempEmployee = new Employee("Ahmet", "Aksoy", "M", new Date(), new Date());
1636
InsertQueryApi.insertOneRecord(tempEmployee, connection);
37+
38+
*/
39+
//database baglantısını kapatır
1740
DbConnectionManagement.killDbConnection(connection);
1841
} catch (SQLException e) {
1942
e.printStackTrace();
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,23 @@
11
package query;
22

3+
import java.sql.Connection;
4+
import java.sql.PreparedStatement;
5+
36
public class DeleteQueryApi {
7+
8+
9+
public static void deleteRecord(int recordId, Connection connection) {
10+
try {
11+
PreparedStatement preparedStatement = connection.prepareStatement("DELETE FROM employee WHERE id= ?");
12+
13+
if (SelectQueryApi.findByEmployeeId(recordId, connection) != null) {//bu recordId'de kayıt varsa eğer
14+
preparedStatement.setInt(1, recordId);
15+
int deleteRowCount = preparedStatement.executeUpdate();
16+
System.out.println(deleteRowCount + "rows deleted !");
17+
}
18+
} catch (Exception e) {
19+
System.out.println(e.getMessage());
20+
}
21+
}
22+
423
}

db-example/src/main/java/query/SelectQueryApi.java

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,27 @@ public static int resultLastRecordId(Connection connection) {
2828
return lastId;
2929
}
3030

31+
/*
32+
bu fonksiyon dışarıdan parametre olarak verılmıs olan id'nin veritabanında olup olmadıgına bakar
33+
eger verilen id'de kayıt varsa o kaydın recordId'sını döner
34+
35+
--- Neden bu fonksiyonu kullanmalıyız ----
36+
1-> Kayıt silerken o kaydın veritabanında olup olmadığı önemlidir çünkü olmayan kayıdı silmeye calısırsak hata alırız
37+
2-> Kayıt eklerken aynı id'de kayıt olabilir bu seferde hata alırız ve kayıt ekleyemeyebiliriz
38+
*/
39+
public static Integer findByEmployeeId(int id, Connection connection) {
40+
Integer recordId = null;
41+
try {
42+
PreparedStatement preparedStatement = connection.prepareStatement("SELECT * FROM employee WHERE id= ?");
43+
preparedStatement.setInt(1, id);
44+
ResultSet resultSet = preparedStatement.executeQuery();
45+
if (resultSet.next()) {
46+
recordId = resultSet.getInt(1);
47+
}
48+
} catch (Exception e) {
49+
System.out.println(e.getMessage());
50+
}
51+
return recordId;
52+
}
3153

3254
}

0 commit comments

Comments
 (0)