我想制作一个非常简单的DELETE语句:
DELETE FROM appliances WHERE (id = 7)
但我总是得到这个错误:
DELETE FROM appliances WHERE (id = 7)
Fehlerquelle: SQL Server Compact ADO.NET Data Provider
Fehlermeldung: Der angegebene Index ist nicht vorhanden. [ PK_analog_config ]
英文翻译错误文字说:
The given index doesn't exsists. [ PK_analog_config ]
桌面用具:
id int not null primary key,
name NVarChar(20) not null,
status NVarChar(100) null,
location NVarChar(100) not null,
port int not null,
(没有外键或索引)
表analog_config: 主键是id(来自设备)和名称的组合。 所以id也是一个指向appliances.id的外键(在删除CASCADE时)。
appliance_id int not null primary key,
value_name NVarChar(20) not null primary key,
access_rights NVachar(2) not null,
min_value numeric(18,2) not null,
max_value numeric(18,2) not null,
unit nvarchar(20) not null,
fk_analog_values_appliances:
PK-table= appliances (id)
FK-table= analog_config (appliance_id)
ON UPDATE CASCADE
ON DELETE CASCADE
我不明白错误信息。他们的意思是哪个指数?在analog_config表中没有数据。
任何人都可以帮助我吗?