Вверх ↑
Этот топик читают: Гость
Ответов: 92
Рейтинг: 0
#1: 2018-01-30 02:42:06 ЛС | профиль | цитата
Вопрос тупой, но то ли руки кривые, то ли спрашиваю не так, но гугл отвечать не торопится.

Мы имеем базу с двумя таблицами, с одинаковой структурой.

id,name,comment

Как запись например с id=3 перенести из tb1 в tb2?

Насколько я понимаю, можно сделать сначала запросив данные по id, потом записать их в новую таблицу, после чего удалить запись по id из старой.

Но как-то это громоздко получается и компоненты по два раза используются. Может есть более оптимальный вариант?

Редактировалось 1 раз(а), последний 2018-01-30 02:43:02
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 497
Рейтинг: 16
#2: 2018-01-30 03:59:49 ЛС | профиль | цитата
1 запрос и 2 выполнения это громоздко? ясно
ну тогда только ІС в котором SELECT > INSERT > DELETE но лучше SELECT > SELECT if(nul) INSERT else UPDATE > DELETE

Редактировалось 1 раз(а), последний 2018-01-30 04:00:54
карма: 1
        ]  
0
Ответов: 16884
Рейтинг: 1239
#3: 2018-01-30 10:20:49 ЛС | профиль | цитата
Если id не INTEGER PRIMARY KEY
Add(SQLite_Exec,9801091,483,238)
{
SQL="INSERT INTO tab2 SELECT * FROM tab1 WHERE id=3;\r\nDELETE FROM tab1 WHERE id=3;"
}


Редактировалось 1 раз(а), последний 2018-01-30 10:27:59
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 92
Рейтинг: 0
#4: 2018-01-30 16:32:04 ЛС | профиль | цитата
Tad писал(а):
Если id не INTEGER PRIMARY KEY



CREATE TABLE `Default` (
`id` INTEGER PRIMARY KEY AUTOINCREMENT NULL,
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#5: 2018-01-30 17:39:05 ЛС | профиль | цитата

Add(SQLite_Exec,9801091,483,238)
{
SQL="INSERT INTO tab2 SELECT NULL, name,comment FROM tab1 WHERE id=3;\r\nDELETE FROM tab1 WHERE id=3;"
}
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 92
Рейтинг: 0
#6: 2018-01-30 18:31:45 ЛС | профиль | цитата
Tad большое спасибо, именно то что искал.
карма: 0

0
6
Сообщение
...
Прикрепленные файлы
(файлы не залиты)