Apache Derby - Daten einfügen

Die Einfügeabfrage fügt Daten ein: new recordsin den Tisch.

Syntax

Es folgt die grundlegende Syntax der INSERT-Anweisung:

ij>INSERT INTO table_name VALUES (column_name1, column_name2, ...);

Dabei sind Spalte1, Spalte2 die Spaltenwerte in der Zeile, die eingefügt werden soll.

Beispiel

Die folgende SQL INSERT-Anweisung fügt eine neue Zeile in die Student-Tabelle ein, in die Werte in die Spalten eingefügt werden id, age, first name und, last name.

SQL> INSERT INTO Student VALUES (101, 20, 'Zara', 'Ali');

Syntax 2

Sie können auch zwei bestimmte Spalten einfügen, indem Sie die unten angegebenen Spaltennamen angeben.

ij>INSERT INTO table_name VALUES (column_name1, column_name2, ...) VALUES
(value1, value2, ...);

Note- Apache Derby berechnet automatisch Werte für generierte Spalten. Beispielsweise müssen keine Werte für die ID-Spalte in der Schülertabelle übergeben werden, die zuvor in diesem Lernprogramm erstellt wurde. Wenn Ihre Tabelle Spalten generiert hat, verwenden Siesyntax2.

Beispiel

ij> INSERT INTO Student(Age, First_Name, Last_Name) VALUES (21, 'Sucharitha' , 'Tyagi');
1 row inserted/updated/deleted

Sie können auch zwei Zeilen mit einer Anweisung wie folgt einfügen:

ij>INSERT INTO Student(Age, First_Name, Last_Name) VALUES (20, 'Amit',
'Bhattacharya'), (22, 'Rahul', 'Desai');
2 rows inserted/updated/deleted

Sie können den Inhalt der Tabelle mit dem Befehl SELECT überprüfen (wir werden diesen Befehl später in diesem Lernprogramm erläutern).

Syntax 3

Sie können eine andere Abfrage in der insert-Anweisung als - verwenden

INSERT INTO table_Name Query

Beispiel

Angenommen, wir haben eine Tabelle mit dem Namen First_Year in der Datenbank wie unten gezeigt mit ähnlichen Spalten wie in der Studententabelle -

ID |AGE |FIRST_NAME |LAST_NAME
-----------------------------------------------------------------
1 |20 |Raju |Pendyala
2 |21 |Bhargav |Prayaga
3 |22 |Deepthi |Yerramilli

Sie können Werte in dieser Tabelle mit der obigen Syntax wie folgt in die Schülertabelle einfügen:

ij> INSERT INTO Student (Age, First_Name, Last_Name)
 SELECT Age, First_Name, Last_Name FROM First_Year;
> 3 rows inserted/updated/deleted

Nachdem Sie alle oben genannten Einfügeanweisungen ausgeführt haben, lautet die Student-Tabelle wie folgt:

ID |AGE |FIRST_NAME |LAST_NAME
-------------------------------------------------------------
1 |21 |Sucharitha |Tyagi
2 |20 |Amit |Bhattacharya
3 |22 |Rahul |Desai
4 |20 |Raju |Pendyala
5 |21 |Bhargav |Prayaga
6 |22 |Deepthi |Yerramilli

Fügen Sie Daten mit dem JDBC-Programm ein

In diesem Abschnitt erfahren Sie, wie Sie mithilfe der JDBC-Anwendung Daten in eine Tabelle in der Apache Derby-Datenbank einfügen.

Wenn Sie den Derby-Netzwerkserver über den Netzwerkclient anfordern möchten, stellen Sie sicher, dass der Server betriebsbereit ist. Der Klassenname für den Netzwerkclienttreiber lautet org.apache.derby.jdbc.ClientDriver und die URL lautet jdbc: derby: // localhost: 1527 /DATABASE_NAME;create = true; user =USER_NAME;passw ord =PASSWORD""

Führen Sie die folgenden Schritte aus, um Daten in eine Tabelle in Apache Derby einzufügen -

Schritt 1: Registrieren Sie den Treiber

Um mit der Datenbank zu kommunizieren, müssen Sie zunächst den Treiber registrieren. DasforName() Methode der Klasse, ClassAkzeptiert einen String-Wert, der einen Klassennamen darstellt, lädt ihn in den Speicher, der ihn automatisch registriert. Registrieren Sie den Treiber mit dieser Methode.

Schritt 2: Stellen Sie die Verbindung her

Im Allgemeinen besteht der erste Schritt zur Kommunikation mit der Datenbank darin, eine Verbindung mit der Datenbank herzustellen. DasConnectionKlasse repräsentiert die physische Verbindung mit einem Datenbankserver. Sie können ein Verbindungsobjekt erstellen, indem Sie das aufrufengetConnection() Methode der DriverManagerKlasse. Erstellen Sie mit dieser Methode eine Verbindung.

Schritt 3: Erstellen Sie ein Anweisungsobjekt

Sie müssen eine erstellen Statement oder PreparedStatement or, CallableStatementObjekte zum Senden von SQL-Anweisungen an die Datenbank. Sie können diese mit den Methoden erstellencreateStatement(), prepareStatement() und, prepareCall()beziehungsweise. Erstellen Sie eines dieser Objekte mit der entsprechenden Methode.

Schritt 4: Führen Sie die Abfrage aus

Nachdem Sie eine Anweisung erstellt haben, müssen Sie sie ausführen. DasStatement Klasse bietet verschiedene Methoden, um eine Abfrage wie die auszuführen execute() Methode zum Ausführen einer Anweisung, die mehr als eine Ergebnismenge zurückgibt.

Das executeUpdate()Methode führt Abfragen wie INSERT, UPDATE, DELETE aus. DasexecuteQuery() Methode zu Ergebnissen, die Daten usw. zurückgeben. Verwenden Sie eine dieser Methoden und führen Sie die zuvor erstellte Anweisung aus.

Beispiel

Das folgende JDBC-Beispiel zeigt, wie Sie mit dem JDBC-Programm Daten in eine Tabelle in Apache Derby einfügen. Hier stellen wir mithilfe des eingebetteten Treibers eine Verbindung zu einer Datenbank mit dem Namen sampleDB her (wird erstellt, wenn sie nicht vorhanden ist).

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class InsertData {
   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
      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))";
      //Executing the query
      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')";
      stmt.execute(query);
      System.out.println("Values inserted");
   }
}

Ausgabe

Wenn Sie das obige Programm ausführen, erhalten Sie die folgende Ausgabe:

Values inserted