【问题标题】:Java program does not check SQLite Constraint?Java 程序不检查 SQLite 约束?
【发布时间】:2013-07-18 12:52:23
【问题描述】:

Java 程序不检查 SQLite 约束?

我必须遵循表格结构及其内容

create table Parent
(
 ParentID int primary key, 
 ParentName varchar(30)  
)
create table child
(
 ChildID int primary key, 
 ParentID int references Parent, 
 ChildName varchar(30) 
)
insert into Parent values(1,'a');
insert into Parent values(2,'b')
insert into Child values(1,1,'c');
insert into Child values(2,1,'d');
insert into Child values(3,1,'e');
insert into Child values(4,1,'f');

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.List;

public class LiteConn {
    public static void main(String[] args) throws SQLException {
        // TODO Auto-generated method stub
        Connection con=null;
        Statement st=null;
        ResultSet rs=null;
        try {
            Class.forName("org.sqlite.JDBC");  
            con= DriverManager.getConnection("jdbc:sqlite:C:\\Users\\chaitanya\\Documents\\Demo.db");
            st = con.createStatement();
            int i=st.executeUpdate("delete from Parent where ParentID=1 ");
            System.out.println("i "+i);
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.out.println(e.getMessage());
        } 
        catch(ClassNotFoundException e1)
        {
            System.out.println(e1.getMessage());
        }
        finally {
            con.close();
        }

    }

}

** SQLite IDE 不允许触发此查询,但是当我通过 Java 程序尝试此操作时,此查询会执行。
(这个删除查询试图删除父行......)**

【问题讨论】:

    标签: java database sqlite constraints


    【解决方案1】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 2021-07-02
      • 2011-01-28
      • 2023-03-13
      • 1970-01-01
      相关资源
      最近更新 更多