问题描述
我正在使用 Datagrip 和 sqlite。
我有一个表 ConnectionFactory factory = new ConnectionFactory();
//factory.UserName = "user";
//factory.Password = "password";
//factory.VirtualHost = "/";
factory.HostName = "192.168.99.100";
factory.Port = AmqpTcpEndpoint.UseDefaultPort;
IConnection connection = factory.CreateConnection();
//using (var connection = factory.CreateConnection())
using (var channel = connection.CreateModel())
{
channel.QueueDeclare(queue: "hello",durable: false,exclusive: false,autoDelete: false,arguments: null);
string message = "Hello World!";
var body = Encoding.UTF8.GetBytes(message);
channel.Basicpublish(exchange: "",routingKey: "hello",basicProperties: null,body: body);
Console.WriteLine(" [x] Sent {0}",message);
}
Console.WriteLine(" Press [enter] to exit.");
Console.ReadLine();
和另一个名为 suppliers
:
products
我试过 CREATE TABLE suppliers (id INTEGER NOT NULL PRIMARY KEY,nom TEXT,siege_social TEXT);
CREATE TABLE Products (id INTEGER NOT NULL PRIMARY KEY,prix REAL,supplier INTEGER,FOREIGN KEY (supplier) REFERENCES suppliers(id)
);
像我的老师那样激活外键约束。
但是,当我在供应商表为空的情况下尝试插入产品时,我没有收到任何错误:
PRAGMA foreign_keys = ON;
我期待这个:INSERT INTO Products values (1,"Lunettes Cobra",30,1);
你知道我如何让它为此引发错误吗?
谢谢!