插入查询将数据:新记录插入表中。
Insert Data - 语法
以下是INSERT语句的基本语法-
ij>INSERT INTO table_name VALUES (column_name1, column_name2, ...);
其中column1,column2是要插入的行中的列值。
Insert Data - 示例
以下SQL INSERT语句在Student表中插入新行,并在 id,age,first_name和last_name列中插入值。
SQL> INSERT INTO Student VALUES (101, 20, Zara, Ali);
Insert Data - 语法2
或者,您可以通过提及列名来插入两个特定的列,如下所示:
ij>INSERT INTO table_name VALUES (column_name1, column_name2, ...) VALUES (value1, value2, ...);
注意-Apache Derby自动计算生成的列的值,如,不需要为本教程前面创建的学生表中的id列传递值,如果您的表已生成列,请使用 syntax2 。
Insert Data - 示例
ij> INSERT INTO Student(Age, First_Name, Last_Name) VALUES (21, Sucharitha , Tyagi); 1 row inserted/updated/deleted
并且,您还可以使用一条语句插入两行,如下所示:
ij>INSERT INTO Student(Age, First_Name, Last_Name) VALUES (20, Amit, Bhattacharya), (22, Rahul, Desai); 2 rows inserted/updated/deleted
您可以使用SELECT命令验证表的内容(无涯教程将在本教程的后面部分讨论此命令)。
Insert Data - 语法3
您可以在insert语句中使用另一个查询,如下所示:
INSERT INTO table_Name Query
Insert Data - 示例
假设无涯教程在数据库中有一个名为 First_Year 的表,如下所示,其列与Student表中的列类似-
ID |AGE |FIRST_NAME |LAST_NAME ----------------------------------------------------------------- 1 |20 |Raju |Pendyala 2 |21 |Bhargav |Prayaga 3 |22 |Learnfk |Yerramilli
您可以使用上述语法,将此表中的值插入到学生表中,如下所示:
ij> INSERT INTO Student (Age, First_Name, Last_Name) SELECT Age, First_Name, Last_Name FROM First_Year; > 3 rows inserted/updated/deleted
执行完上述所有插入语句后,Student表将如下所示:
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 |Learnfk |Yerramilli
Insert Data - JDBC示例
以下JDBC示例演示了如何使用JDBC程序将数据插入Apache Derby中的表中,在这里,无涯教程使用嵌入式驱动程序连接到名为sampleDB的数据库(如果不存在则创建)。
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 {
//注册驱动
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
//创建连接
String URL = "jdbc:derby:SampleDB;create=true";
Connection conn = DriverManager.getConnection(URL);
</span><span class="com">//获取Statement对象</span><span class="pln">
</span><span class="typ">Statement</span><span class="pln"> stmt </span><span class="pun">=</span><span class="pln"> conn</span><span class="pun">.</span><span class="pln">createStatement</span><span class="pun">();</span><span class="pln">
</span><span class="com">//创建表结构</span><span class="pln">
</span><span class="typ">String</span><span class="pln"> query </span><span class="pun">=</span><span class="pln"> </span><span class="str">"CREATE TABLE Employees("</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"Id INT NOT NULL GENERATED ALWAYS AS IDENTITY, "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"Name VARCHAR(255), Salary INT NOT NULL, "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"Location VARCHAR(255), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"PRIMARY KEY (Id))"</span><span class="pun">;</span><span class="pln">
</span><span class="com">//执行SQL语句</span><span class="pln">
</span><span class="typ">String</span><span class="pln"> query </span><span class="pun">=</span><span class="pln"> </span><span class="str">"INSERT INTO Employees("</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"Name, Salary, Location) VALUES "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Amit, 30000, Hyderabad), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Kalyan, 40000, Vishakhapatnam), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Renuka, 50000, Delhi), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Archana, 15000, Mumbai), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Trupthi, 45000, Kochin), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Suchatra, 33000, Pune), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Rahul, 39000, Lucknow), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"(Trupti, 45000, Kochin)"</span><span class="pun">;</span><span class="pln">
stmt</span><span class="pun">.</span><span class="pln">execute</span><span class="pun">(</span><span class="pln">query</span><span class="pun">);</span><span class="pln">
</span><span class="typ">System</span><span class="pun">.</span><span class="kwd">out</span><span class="pun">.</span><span class="pln">println</span><span class="pun">(</span><span class="str">"Values inserted"</span><span class="pun">);</span><span class="pln">
}
}
在执行上述程序时,您将获得以下输出-
Values inserted