Löschen Fremdschlüssel in sybase 12.5
Ich habe zwei Tabellen:
CREATE TABLE dbo.country
(
cntry_id VARCHAR(2) NOT NULL,
name VARCHAR(50) NOT NULL,
CONSTRAINT pk_country PRIMARY KEY (cntry_id)
CREATE TABLE dbo.city
(
city_id VARCHAR(3) NOT NULL,
name VARCHAR(50) NOT NULL,
cntry_id VARCHAR(2) NOT NULL,
CONSTRAINT pk_city PRIMARY KEY (city_id),
FOREIGN KEY (cntry_id) REFERENCES dbo.country(cntry_id)
)
Ich versuche, drop-fk constrait so kann ich dann die Tabelle löschen.
Den FK definitley vorhanden ist:
EXEC sp_fkeys country
pktable_qualifier pktable_owner pk_tablename ...
xxxxxx xxx country cntry_id ....
(DB-name verdeckt)
Aber beide
EXEC sp_dropkey foreign, country, city
EXEC sp_dropkey foreign, city, country
zurück
264 Error (17499) No foreign key for the table or view exists. sp_dropkey(263)
Weiß jemand, wie man diese lösen?
Danke im Voraus
Ryan
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ansonsten wüsste ich nicht, was der Grund sein könnte. Die Anzahl der Fehler Meldung er konnte nicht löschen Sie es aus syskeys. Aber er fand, dass die beiden Tabellen in Ordnung und Sie sind die Besitzer der Tabellen zu.
Haben Sie versucht
sp_helpkey
undsp_helpconstraint
zu überprüfen, was Sie sagen, über die Existenz einer FK?Dies sollte auch in der Lage sein, Ihnen zu sagen, wenn es wirklich ein FK definiert.
Bezüglich der Benennung eines FK. Dies sollte den trick tun
Ich nicht über 12,5 DB infront von mir, im moment, aber ich weiß mit Sybase Anywhere und Sybase IQ können Sie bei der Verwaltung fremden Schlüssel mit Sybase Central. Wenn Sie Sybase Central installiert, fire it up, wählen Sie Ihre Tabelle und klicken Sie dann auf der rechten Seite suchen Sie nach einem Reiter mit der Bezeichnung Einschränkungen-oder sekundärschlüssel. Wenn Sie es haben, wählen Sie die FK, die Sie löschen möchten, drücken Sie löschen, dann mit der rechten Maustaste in der Tabelle auf der linken Seite, und wählen Sie TABELLE SPEICHERN.
Ich hoffe, das hilft!