无法修改表以添加外键

时间:2017-02-18 07:25:17

标签: sql oracle

我有2张桌子

  • Songs(SONGID,SONGNAME,ALBUM,ARRANGER,VOCALISTS,LYRCISTS)
  • Source_songs(Source_Song_Name,ID_ACTUALSONGNAME)

我无法修改Songs以添加外键

ALTER TABLE SONGS
   ADD CONSTRAINT Original_Song_Name
   ADD FOREIGN KEY (Source_song_id)                 
       REFERENCES Source_SongName (SOURCE_SONGNAME);

我得到了这个错误。我知道我正在拼写专栏名称idk做什么。

错误:

  

SQL错误:ORA-00904 ::无效的标识符
  00904. 00000 - "%s:无效的标识符"

2 个答案:

答案 0 :(得分:1)

Alter table Songs ADD CONSTRAINT FK_ID FOREIGN KEY(source_song_id) references ...

仅使用ADD关键字一次

答案 1 :(得分:0)

有什么难以理解的?语法为 CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache', 'LOCATION': 'pursuite.vbzolj.cfg.apse1.cache.amazonaws.com:11211', } } 。您的表名不是references <table_name> ( <column_name> ),而是Source_SongName,并且没有任何名为Source_songs的列。您缺少SOURCE_SONGNAME中的第二个下划线_

此外,奇怪的是,您的表格(Source_Song_Name)上的外键不会存在于您的表格中。

或者您提供的所有信息都已组成?