Apache Derby - Verileri Güncelle

UPDATE deyimi, bir tablodaki verileri güncellemek için kullanılır. Apache Derby iki tür güncelleme (sözdizimi) sağlar:searched güncelleme ve positioned Güncelleme.

Aranan UPDATE ifadesi, bir tablonun belirtilen tüm sütunlarını günceller.

Sözdizimi

UPDATE sorgusunun sözdizimi aşağıdadır -

ij> UPDATE table_name
 SET column_name = value, column_name = value, ...
 WHERE conditions;

WHERE yan tümcesi =,! =, <,>, <= Ve> = gibi karşılaştırma işleçlerinin yanı sıra BETWEEN ve LIKE işleçlerini kullanabilir.

Misal

Veritabanında aşağıda gösterildiği gibi 4 kaydı olan bir Çalışan tablounuz olduğunu varsayalım -

ID |NAME |SALARY |LOCATION
----------------------------------------------------------
1 |Amit |30000 |Hyderabad
2 |Kalyan |40000 |Vishakhapatnam
3 |Renuka |50000 |Delhi
4 |Archana |15000 |Mumbai

Aşağıdaki SQL UPDATE ifadesi, adı Kaylan olan bir çalışanın konumunu ve maaşını günceller.

ij> UPDATE Employees SET Location = 'Chennai', Salary = 43000 WHERE Name =
'Kalyan';
1 rows inserted/updated/deleted

Çalışanlar tablosunun içeriğini alırsanız, UPDATE sorgusu ile yapılan değişiklikleri gözlemleyebilirsiniz.

ij> select * from Employees;
ID |NAME |SALARY |LOCATION
----------------------------------------------------------
1 |Amit |30000 |Hyderabad 
2 |Kalyan |43000 |Chennai
3 |Renuka |50000 |Delhi
4 |Archana |15000 |Mumbai
4 rows selected

Verileri JDBC programını kullanarak güncelleyin

Bu bölümde, Apache Derby veritabanındaki bir tablonun mevcut kayıtlarının JDBC uygulaması kullanılarak nasıl güncelleneceği açıklanmaktadır.

Ağ istemcisini kullanarak Derby ağ sunucusunu talep etmek istiyorsanız, sunucunun çalışır durumda olduğundan emin olun. Ağ istemci sürücüsünün sınıf adı org.apache.derby.jdbc.ClientDriver ve URL jdbc: derby: // localhost: 1527 / şeklindedir.DATABASE_NAME; oluştur = doğru; kullanıcı =USER_NAME; passw ord =PASSWORD"

Apache Derby'de bir tablonun mevcut kayıtlarını güncellemek için aşağıda verilen adımları izleyin.

Adım 1: Sürücüyü kaydedin

Veritabanıyla iletişim kurmak için öncelikle sürücüyü kaydetmeniz gerekir. forName() sınıfın yöntemi Classbir sınıf adını temsil eden bir String değerini kabul eder, onu otomatik olarak kaydeden belleğe yükler. Bu yöntemi kullanarak sürücüyü kaydedin.

2. Adım: Bağlantıyı alın

Genel olarak, veri tabanı ile iletişim kurmak için yaptığımız ilk adım, onunla bağlantı kurmaktır. Bağlantı sınıfı, bir veritabanı sunucusuyla fiziksel bağlantıyı temsil eder. Çağırarak bir bağlantı nesnesi oluşturabilirsiniz.getConnection() yöntemi DriverManagersınıf. Bu yöntemi kullanarak bir bağlantı oluşturun.

Adım 3: Bir ifade nesnesi oluşturun

Bir yaratmanız gerekiyor Statement veya PreparedStatement or, CallableStatementveritabanına SQL ifadeleri göndermek için nesneler. Yöntemleri kullanarak bunları oluşturabilirsinizcreateStatement(), prepareStatement() ve, prepareCall()sırasıyla. Uygun yöntemi kullanarak bu nesnelerden birini oluşturun.

4. Adım: Sorguyu yürütün

Bir ifade oluşturduktan sonra, onu yürütmeniz gerekir. Statement sınıfı, bir sorguyu yürütmek için çeşitli yöntemler sağlar. execute()Birden fazla sonuç kümesi döndüren bir ifadeyi yürütme yöntemi. executeUpdate()yöntem INSERT, UPDATE, DELETE gibi sorguları yürütür. executeQuery()yöntem veri döndürür. Bu yöntemlerden birini kullanın ve önceden oluşturulan ifadeyi yürütün.

Misal

Aşağıdaki JDBC örneği, Apache Derby'deki bir tablonun mevcut kayıtlarının JDBC programı kullanılarak nasıl güncelleneceğini gösterir. Burada, gömülü sürücüyü kullanarak sampleDB (yoksa yaratacaktır) adlı bir veritabanına bağlanıyoruz.

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class UpdateData {
   public static void main(String args[]) throws Exception {
      //Registering the driver
      Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
      //Getting the Connection object
      String URL = "jdbc:derby:sampleDB;create=true";
      Connection conn = DriverManager.getConnection(URL);

      //Creating the Statement object
      Statement stmt = conn.createStatement();

      //Creating a table and populating it
      String query = "CREATE TABLE Employees("
         + "Id INT NOT NULL GENERATED ALWAYS AS IDENTITY, "
         + "Name VARCHAR(255), Salary INT NOT NULL, "
         + "Location VARCHAR(255), "
         + "PRIMARY KEY (Id))";
      String query = "INSERT INTO Employees("
         + "Name, Salary, Location) VALUES "
         + "('Amit', 30000, 'Hyderabad'), "
         + "('Kalyan', 40000, 'Vishakhapatnam'), "
         + "('Renuka', 50000, 'Delhi'), "
         + "('Archana', 15000, 'Mumbai'), "
         + "('Trupthi', 45000, 'Kochin'), "
         + "('Suchatra', 33000, 'Pune'), "
         + "('Rahul', 39000, 'Lucknow'), "
         + "('Trupti', 45000, 'Kochin')";
      //Executing the query
      String query = "UPDATE Employees SET Location = 'Chennai', Salary = 43000 WHERE
         Name = 'Kalyan'";
      int num = stmt.executeUpdate(query);
      System.out.println("Number of records updated are: "+num);
   }
}

Çıktı

Yukarıdaki programı çalıştırırken, aşağıdaki çıktıyı alacaksınız -

Number of records updated are: 1