2013-10-04 4 views
0

Мне нужен запрос, который возьмет первичный ключ из одной таблицы (таблица 2) и поместит его во вторую таблицу (таблица 1) в качестве внешнего ключа. База данных Microsoft Access 2007. Я пробовал следующий запрос, но он не работает:обновить внешний ключ от ключа в другой таблице

update table1 
set table1.table2ID = table2.ID 
FROM table1 INNER JOIN table2 on table1.name = table2.name 

две таблицы следующим образом:

Таблица 1:

ID | table2ID | Name 
-------------------------- 
1 |   | Name1 
2 |   | Name2 
3 |   | Name1  

Таблица 2:

ID | Name 
----------------- 
1  | Name1 
2  | Name2  

Я хочу, чтобы результат:

Таблица 1:

ID | table2ID | Name 
-------------------------- 
1 |  1 | Name1 
2 |  2 | Name2 
3 |  1 | Name1  
+0

Вы поняли это? Помог ли любой из двух ответов? –

ответ

0

Попробуйте это:

update table1 
INNER JOIN table2 ON table1.name = table2.name 
SET table1.table2ID = table2.ID 

или это:

update table1, table2 
SET table1.table2ID = table2.ID 
WHERE table1.name = table2.name 

Позвольте мне знать, какой из них работает для вас лучше всего.

0

U можете попробовать это:

обновление TABLE1 набор tabel2id = TABLE2.Id от table1 сек внутреннее соединение TABLE2 s на u.name = s.NAME

Он работал для меня ..

Смежные вопросы