Apache Derby – 模式
Apache Derby – 模式
数据库模式是表示整个数据库逻辑视图的骨架结构。它定义了数据的组织方式以及它们之间的关系如何关联。它制定了要应用于数据的所有约束。
创建架构
您可以使用 CREATE SCHEMA 语句在 Apache Derby 中创建模式。
句法
以下是 CREATE SCHEMA 语句的语法。
CREATE SCHEMA schema_name AUTHORIZATION id
例子
以下示例在 Derby 数据库中创建名为 my_schema 的模式。
ij> CREATE SCHEMA AUTHORIZATION my_schema; 0 rows inserted/updated/deleted
然后,您可以在此架构中创建一个表,如下所示。
ij> CREATE TABLE my_schema.Emp ( Id INT NOT NULL GENERATED ALWAYS AS IDENTITY, Name VARCHAR(255), Salary INT NOT NULL, Location VARCHAR(255), Phone_Number BIGINT ); > > > > > 0 rows inserted/updated/deleted
您可以使用 SHOW SCHEMAS 查询来验证架构列表,您可以在此处找到创建的架构列表。
ij> show schemas; TABLE_SCHEM ------------------------------ APP MY_SCHEMA NULLID SQLJ SYS SYSCAT SYSCS_DIAG SYSCS_UTIL SYSFUN SYSIBM SYSPROC SYSSTAT 12 rows selected
删除架构
您可以使用 DROP SCHEMA 语句删除现有模式。
句法
以下是 DROPS SCHEMA 语句的语法。
DROP SCHEMA my_schema RESTRICT;
例子
仅当架构中没有任何对象时,您才能删除架构。要删除架构,请删除其中的所有表并删除架构。
ij> DROP TABLE my_schema.Emp; 0 rows inserted/updated/deleted
以下示例删除上面创建的架构。
ij> DROP SCHEMA my_schema RESTRICT; 0 rows inserted/updated/deleted
JDBC 示例
以下 JDBC 示例创建和删除名为 my_schema 的模式。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class CreateSchemaExample {
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();
stmt.execute("CREATE SCHEMA AUTHORIZATION my_schema");
//Executing the query
String query = "CREATE TABLE my_schema.Employees( "
+ "Id INT NOT NULL GENERATED ALWAYS AS IDENTITY, "
+ "Name VARCHAR(255), "
+ "Salary INT NOT NULL, "
+ "Location VARCHAR(255), "
+ "PRIMARY KEY (Id))";
stmt.execute(query);
System.out.println("Table created in schema");
stmt.execute("DROP TABLE my_schema.Employees");
stmt.execute("DROP SCHEMA my_schema RESTRICT");
System.out.println("Schema dropped");
}
}
输出
执行时,上述程序生成以下示例。
Table created in schema Schema dropped