Форум программистов, компьютерный форум, киберфорум
C#: Базы данных, ADO.NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/68: Рейтинг темы: голосов - 68, средняя оценка - 4.71
36 / 25 / 12
Регистрация: 08.04.2013
Сообщений: 269
1

SQLite вставка из одной таблицы в другую

09.04.2013, 17:26. Показов 13096. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
Есть таблица A. В ней куча записей, мне надо выполнить копирование из этой таблицы в аналогичную B с выборкой. Вот код который не выдает ошибок, но и не работает:

SQLiteCommand command_ins = new SQLiteCommand("INSERT INTO table_a SELECT * FROM table_b WHERE name=@name", test);
command_ins.Parameters.AddWithValue("@name", listBox2.ToString());
command_ins.ExecuteNonQuery();

Где я ошибся?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.04.2013, 17:26
Ответы с готовыми решениями:

Перенос информации из одной таблицы БД в другую
Может кто знает как перенести инфу из одной таблицы в дргую? бд у меня в C#

Перенос с одной таблицы в другую данных
Есть бд access в которой есть данные . Нужно перенесли данные с одной таблицы в другую . В шарпе...

Переместить строку из одной таблицы в другую
Всем доброго времени суток. У меня есть таблица (табельный номер, фамилия, имя, отчество, дата...

Скопировать строку из одной таблицы в другую
всем привет) сразу перейду к делу. значит,есть форма : на этой вкладке показаны,как вы...

8
311 / 309 / 125
Регистрация: 29.01.2013
Сообщений: 638
Записей в блоге: 1
09.04.2013, 20:26 2
Не работал с SQLite, поэтому скажу по другим типам: MSSQL обругался бы на автоинкрементные поля. Попробуйте все-таки список полей добавить. Может, понятнее ошибка станет.
0
36 / 25 / 12
Регистрация: 08.04.2013
Сообщений: 269
09.04.2013, 20:28  [ТС] 3
Пробовал со списком полей, все то же самое.
Если изменить строку на
SQLiteCommand command_ins = new SQLiteCommand("INSERT INTO table_a SELECT * FROM table_b", test);
то копирует полностью. А мне надо только те строки где name=listBox2.ToString()...
0
311 / 309 / 125
Регистрация: 29.01.2013
Сообщений: 638
Записей в блоге: 1
09.04.2013, 20:37 4
А на шару вариант с указанием таблицы не прокатит?
SQL
1
INSERT INTO table_a SELECT * FROM table_b WHERE table_b.name=@name
0
36 / 25 / 12
Регистрация: 08.04.2013
Сообщений: 269
10.04.2013, 13:27  [ТС] 5
Не катит.
Глупый вопрос: ну допустим скопировали мы в таблицу Б все данные. Как из нее удалить все записи где name не равен listBox2.ToString()?
Или на счет этого даже задумываться не стоит?

Добавлено через 16 часов 40 минут
Удаление работает только по условию равенства. Как сделать неравенство?
!= не подходит
0
311 / 309 / 125
Регистрация: 29.01.2013
Сообщений: 638
Записей в блоге: 1
10.04.2013, 13:42 6
<> ?
1
36 / 25 / 12
Регистрация: 08.04.2013
Сообщений: 269
10.04.2013, 14:26  [ТС] 7
Почему-то удаляются вообще все записи.

Добавлено через 23 минуты
Поставил точку останова, оказалось что вместо текста в переменную вставляется это:
System.Windows.Forms.ListBox, Items.Count: 7, Items[0]: 20-JT-81

Ошибка была в листбоксе.
Было: listBox2.ToString()
Стало: listBox2.SelectedItem.ToString()

Т.е. решение найдено, но мне кажется кривое. Все-таки хотелось бы получить ответ на вопрос как вставить данные из одной таблицы в другую используя параметры.
0
584 / 371 / 63
Регистрация: 22.07.2009
Сообщений: 875
Записей в блоге: 4
10.04.2013, 16:26 8
SQL
1
INSERT INTO t1(val1,val2) SELECT t2.val1, t2.val2 FROM t2 WHERE t2.id = @id
У меня так работает.
1
36 / 25 / 12
Регистрация: 08.04.2013
Сообщений: 269
10.04.2013, 16:39  [ТС] 9
во я дурень. Код работал изначально, проблема как раз была в listBox2.SelectedItem.ToString().
0
10.04.2013, 16:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.04.2013, 16:39
Помогаю со студенческими работами здесь

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

Перенос строки из одной таблицы в другую
Как перенести строку из одной таблицы в другую по id? а лучше копирование строк по id

Передать данные из одной таблицы в другую
Есть три таблицы: - Tovar - в ней есть поле &quot;Номер товара&quot;. - Dogovor - в ней есть два поля...

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru