Apache Derby - Verileri Al

SELECT deyimi, bir tablodan veri almak için kullanılır. Bu, verileri sonuç kümesi olarak bilinen bir tablo biçiminde döndürür.

Sözdizimi

SELECT ifadesinin sözdizimi aşağıdadır -

ij> SELECT column_name, column_name, ... FROM table_name;
Or,
Ij>SELECT * from table_name

Misal

Veritabanında aşağıda gösterildiği gibi Çalışanlar adlı bir tablomuz olduğunu varsayalım -

ij> CREATE TABLE Employees (
   Id INT NOT NULL GENERATED ALWAYS AS IDENTITY,
   Name VARCHAR(255),
   Salary INT NOT NULL,
   Location VARCHAR(255),
   PRIMARY KEY (Id)
);
> > > > > > > 0 rows inserted/updated/deleted

Ve içine aşağıda gösterildiği gibi dört kayıt eklendi -

ij> INSERT INTO Employees (Name, Salary, Location) VALUES
 ('Amit', 30000, 'Hyderabad'),
 ('Kalyan', 40000, 'Vishakhapatnam'),
 ('Renuka', 50000, 'Delhi'),
 ('Archana', 15000, 'Mumbai');
> > > > 4 rows inserted/updated/deleted

Aşağıdaki SQL ifadesi tablodaki tüm çalışanların isim, yaş ve maaş detaylarını alır;

ij> SELECT Id, Name, Salary FROM Employees;

Bu sorgunun çıktısı -

ID |NAME |SALARY
------------------------------------------------------------------------
1 |Amit |30000
2 |Kalyan |40000
3 |Renuka |50000
4 |Archana |15000
4 rows selected

Bu tablonun tüm kayıtlarını bir defada almak istiyorsanız, sütunların adları yerine * kullanın.

ij> select * from Employees;

Bu, aşağıdaki sonucu verecektir -

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

Verileri JDBC programını kullanarak alın

Bu bölüm, JDBC uygulamasını kullanarak Apache Derby veritabanındaki bir tablodan verileri nasıl alacağınızı öğretir.

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'deki bir tablodan veri almak için aşağıdaki adımları izleyin -

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

Veritabanı ile 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ıyla iletişim kurmak için yaptığımız ilk adım, onunla bağlantı kurmaktır. Connectionclass, 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 veya, 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() veri vb. döndüren sonuçlar için yöntem. Bu yöntemlerden birini kullanın ve önceden oluşturulan ifadeyi yürütün.

Misal

Aşağıdaki JDBC örneği, JDBC programını kullanarak Apache Derby'deki bir tablodan verilerin nasıl alınacağını göstermektedir. Burada, gömülü sürücüyü kullanarak sampleDB (yoksa yaratacaktır) adlı bir veritabanına bağlanıyoruz.

executeQuery() yöntem bir ResultSetifadenin sonucunu tutan nesne. Başlangıçta sonuç kümesi işaretçisi ilk kayıtta olacaktır, ResultSet nesnesinin içeriğini onun kullanarak yazdırabilirsiniz.next() ve getXXX() yöntemler.

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class RetrieveData {
   public static void main(String args[]) throws SQLException,
      ClassNotFoundException {
      //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
      4Statement 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 = "SELECT Id, Name, Salary FROM Employees";
      ResultSet rs = stmt.executeQuery(query);
      while(rs.next()) {
         System.out.println("Id: "+rs.getString("Id"));
         System.out.println("Name: "+rs.getString("Name"));
         System.out.println("Salary: "+rs.getString("Salary"));
         System.out.println(" ");
      }
   }
}

Çıktı

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

Id: 1
Name: Amit
Salary: 30000

Id: 2
Name: Kalyan
Salary: 43000

Id: 3
Name: Renuka
Salary: 50000

Id: 4
Name: Archana
Salary: 15000

Id: 5
Name: Trupthi
Salary: 45000

Id: 6
Name: Suchatra
Salary: 33000

Id: 7
Name: Rahul
Salary: 39000