Russian Qt Forum
Ноябрь 23, 2024, 08:12 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как добавить данные в базу данных из формы  (Прочитано 4590 раз)
Jkc
Гость
« : Февраль 23, 2006, 10:44 »

У меня форма на ней 9 колонок и 10 полей, мне нужно просматривать построчно выбирая данные из комбобоксов и эдитов и добавлять их базу. Кто подскажет как это лучше сделать красиво. Как быть с одной строкой я знаю, но как сделать для 10 , 20 или 100?
Записан
Sergey B.
Программист
*****
Offline Offline

Сообщений: 544



Просмотр профиля WWW
« Ответ #1 : Февраль 23, 2006, 11:06 »

Цитата: "Jkc"
У меня форма на ней 9 колонок и 10 полей, мне нужно просматривать построчно выбирая данные из комбобоксов и эдитов и добавлять их базу. Кто подскажет как это лучше сделать красиво. Как быть с одной строкой я знаю, но как сделать для 10 , 20 или 100?


Не совсем понятен вопрос, но может
query.prepare ?
Записан
Jkc
Гость
« Ответ #2 : Февраль 24, 2006, 10:42 »

Попытаюсь объяснить.
http://promnet.com.ua/addform.bmp

Нужно  из этой формы данные записать в таблицу базы данных за один пресест.
Как записать из одной строки я знаю. Это приблизительно так
   
Цитировать

   QString str = comboBoxT1-> currentText ();
   QString str1 = comboBoxM1 ->currentText();
   QString str2 = lineEditMark1->text();
......
......
      if(   createConnections2() ){
    QSqlQuery query;
       query.exec( "INSERT INTO fdt_sklad (fstype, fsmet, fsmark, fstols, fsshir, fsdlin, fsves, fscena, fsprim)"
           "VALUES (  '"+str+"' , '"+str1+"','"+str2+"','"+str+"', '...', '...', '...', '...', '...)" );
   }



 а вот как быть когда много строк, не охота для каждой строки делать  if( createConnections2() ){
QSqlQuery query;
query.exec( "INSERT может есть более красивый способ?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 22.