2012-01-18 7 views
0

Я обновляю приложение iPhone с базой данных SQLite3. В настоящее время у пользователя есть база данных на своем телефоне, и мне нужно обновить три столбца новыми данными (хранящимися в отдельной базе данных), если совпадает идентификатор строк.Скопируйте три столбца из одной таблицы базы данных в другую

Я смог прикрепить две таблицы и скопировать всю таблицу, но не только три столбца.

database1 
table1 
id, col1, col2, col3, col4 

database2 
table1 
id, col1, col2, col3, col4 

Я хочу скопировать col1, col2, & col3 (не COL4) от Database1, table1 к database2, table1, если матч идентификаторами.

+0

, как вы открыли соединение с двумя отдельными базов данных? Мне действительно интересно, может ли один запрос копировать данные из одного SQLIte3 db и вставлять в другой. Вы используете какой-то инструмент? –

+0

Поскольку делать это кажется невозможным (по крайней мере легко), я только что разделил таблицу на «данные пользователя» и «данные приложения». Это будет проще в долгосрочной перспективе и должно быть сделано с первого дня в любом случае. – Stuart

+0

Я задал вам вопрос об открытии отдельного соединения, потому что я сделал то же самое, что и вы, но использовал внешний инструмент под названием SQLiteManager. –

ответ

0

Вы можете использовать запрос по следующим направлениям:

//Select the database, table and table values 
SELECT INTO 'db2.table2' (field1, field2, field3) 
VALUES 
//Insert data into second database using nested SQL 
(SELECT * FROM 'db1.table1' (field1, field2, field3) WHERE field1 = 1) 

Надеется, что это помогает (и работает для вас) :)

+0

Может также работать, заменив SELECT INTO INSERT INTO –

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