CREATE TABLE语句用于在Derby数据库中创建新表。
创建表语法
以下是CREATE语句的语法。
CREATE TABLE table_name ( column_name1 column_data_type1 constraint (optional), column_name2 column_data_type2 constraint (optional), column_name3 column_data_type3 constraint (optional) );
在Apache Derby中创建表的另一种方法是,您可以使用查询指定列名和数据类型。语法如下:
CREATE TABLE table_name AS SELECT * FROM desired_table WITH NO DATA;
创建表命令行示例
以下SQL语句创建一个名为 Student 的表,该表具有四列,其中id是主键,并且是自动生成的。
ij> CREATE TABLE Student ( Id INT NOT NULL GENERATED ALWAYS AS IDENTITY, Age INT NOT NULL, First_Name VARCHAR(255), last_name VARCHAR(255), PRIMARY KEY (Id) ); > > > > > > > 0 rows inserted/updated/deleted
DESCRIBE命令通过列出列及其详细信息(如果该表存在)来描述指定的表。您可以使用此命令来验证是否创建了表。
ij> DESCRIBE Student; COLUMN_NAME |TYPE_NAME |DEC&|NUM&|COLUM&|COLUMN_DEF|CHAR_OCTE&|IS_NULL& ------------------------------------------------------------------------------ ID |INTEGER |0 |10 |10 |AUTOINCRE&|NULL |NO AGE |INTEGER |0 |10 |10 |NULL |NULL |NO FIRST_NAME |VARCHAR |NULL|NULL|255 |NULL |510 |YES LAST_NAME |VARCHAR |NULL|NULL|255 |NULL |510 |YES 4 rows selected
创建表JDBC示例
如果要使用网络客户端请求Derby网络服务器,请确保该服务器已启动并正在运行,网络客户端驱动程序的类名称为 org.apache.derby.jdbc.ClientDriver ,URL为jdbc:derby://localhost:1527/DATABASE_NAME; create=true; user=USER_NAME; passw ord=PASSWORD"。
以下JDBC示例演示了如何使用JDBC程序在Apache Derby中创建表,在这里,无涯教程使用嵌入式驱动程序连接到名为sampleDB的数据库。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class CreateTable {
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">//执行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">"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), "</span><span class="pln">
</span><span class="pun">+</span><span class="pln"> </span><span class="str">"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">
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">"Table created"</span><span class="pun">);</span><span class="pln">
}
}
执行上述程序后,您将获得以下输出
Table created