Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.09.2016, 00:24   #1
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
По умолчанию Добавление запись в таблицу

Снимок1.GIFесть форма регистрации // имеются 2 табл Администраторов и пользователей . ключевое поле(IDAdmin или IDUser заполняется генераторм
на которой размещено
label ,EditName , EditPas , ComboBox.
AdoConnection , Adoquery1 (для админа) , ADoquery2 ( для пользователя)
комбобокс чисто для условия в какую табл записать

в ADOQuery1 SQL запрос -INSERT INTO AdminUser (IDAdmin, AdminName,AdminPas) VALUES (:Data1, :Data2);
B ADOQuery2 SQL zapros - INSERT INTO Users (UsernName,UserPas) VALUES (:Data1, :Data2);

сам код
Код:
procedure TForm4.Button1Click(Sender: TObject);
begin
   if ComboBox1.ItemIndex=0 then begin// если выбран админ  то используем Adoquery1 -для записи в табл админ .
      AdoQuery1.Close;
    AdoQuery1.Parameters.ParamByName('Data1').Value:=Edit1.Text;
    AdoQuery1.Parameters.ParamByName('Data2').Value:=edit2.Text;
    ADOQuery1.Close;
    AdoQuery1.ExecSQL;
    ADOQuery1.Open;

   end;//end combo

end; //end but
на самом MSSQL serverЕ таблица AdminUser состоит из трех полей
IDAdmin(ключ.генератор , begint) AdminName , AdminPas ( varchar)

ошибок много вылезало .и тип данных не верный и добавление не возможно.. уже запутался .подскажите как правильно добавить запись в таблицу
dimka123 вне форума Ответить с цитированием
Старый 27.09.2016, 00:45   #2
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
По умолчанию

Ошибка - недопустимое имя объекта AdminUser
dimka123 вне форума Ответить с цитированием
Старый 27.09.2016, 01:08   #3
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Adoquery1 (для админа) , ADoquery2 ( для пользователя)
почему не одну ADoquery ?
Цитата:
в ADOQuery1 SQL запрос -INSERT INTO AdminUser (IDAdmin, AdminName,AdminPas) VALUES (:Data1, :Data2);
B ADOQuery2 SQL zapros - INSERT INTO Users (UsernName,UserPas) VALUES (:Data1, :Data2);
Если "Админ" и "Пользователь" будет на одну таблицу и отличить по "статусу" ???
Код:
procedure TForm4.Button1Click(Sender: TObject);
begin
   if ComboBox1.ItemIndex=0 then begin// если выбран админ  то используем Adoquery1 -для записи в табл админ .
      AdoQuery1.Close; // А почему закрывайте ? может не закрыть и просто очистить надо  AdoQuery1.Clear;
    AdoQuery1.Parameters.ParamByName('Data1').Value:=Edit1.Text; // А может здесь Trim(Edit1.Text;)  так лучше 
    AdoQuery1.Parameters.ParamByName('Data2').Value:=edit2.Text;
    ADOQuery1.Close; // после передача параметров через Edit значение почему закрывайте ?
    AdoQuery1.ExecSQL;
    ADOQuery1.Open; // Может ещё нужно запрос SELECT

   end;//end combo

end; //end bu
xxbesoxx вне форума Ответить с цитированием
Старый 27.09.2016, 14:59   #4
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
По умолчанию

Цитата:
Сообщение от xxbesoxx Посмотреть сообщение
почему не одну ADoquery ?

Если "Админ" и "Пользователь" будет на одну таблицу и отличить по "статусу" ???
может быть и лучше! но SQL c Delphi я изучаю не долго . так что пытаюсь сделать хотя бы так. но с запросом на добавление записи ошибка! и не пойму какая и куда лезть .
а если в одну таблицу все загнать то как сделать проверку нужного поля " статус" мне как б разделение полномочий необходимо

Последний раз редактировалось dimka123; 27.09.2016 в 15:20.
dimka123 вне форума Ответить с цитированием
Старый 27.09.2016, 18:25   #5
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
По умолчанию

Цитата:
Сообщение от dimka123 Посмотреть сообщение
может быть и лучше! но SQL c Delphi я изучаю не долго . так что пытаюсь сделать хотя бы так. но с запросом на добавление записи ошибка! и не пойму какая и куда лезть .
а если в одну таблицу все загнать то как сделать проверку нужного поля " статус" мне как б разделение полномочий необходимо
и у меня нету AdoQuery1.Clear; есть ADOQuery1.ClearFields; они чем то отличаются?
dimka123 вне форума Ответить с цитированием
Старый 27.09.2016, 19:08   #6
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
и у меня нету AdoQuery1.Clear; есть ADOQuery1.ClearFields; они чем то отличаются?
-- Да отличаются
-- Смотрите пример пожалуйста
1)
Код:
create database DB1;
--------------
use DB1;
--------------
create table Users(u_id int identity,
                   u_fio nvarchar(30),
                   u_satus nvarchar(30),
                   u_login nvarchar(30),
                   u_password nvarchar(30) 
                   )
2)
Код:
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
  with ADOQuery1 do
  begin
    SQL.Clear;
    SQL.Add('INSERT INTO Users(u_fio, u_satus, u_login, u_password) '+
            'VALUES (:pu_fio, :pu_satus, :pu_login, :pu_password)') ;
    Parameters.ParamByName('pu_fio').Value := Trim(Edit1.Text);
    Parameters.ParamByName('pu_satus').Value := Trim(Edit2.Text);
    Parameters.ParamByName('pu_login').Value := Trim(Edit3.Text);
    Parameters.ParamByName('pu_password').Value := Trim(Edit4.Text);
    ExecSQL;
  end;
end;

end.

Последний раз редактировалось xxbesoxx; 27.09.2016 в 19:15.
xxbesoxx вне форума Ответить с цитированием
Старый 27.09.2016, 20:56   #7
dimka123
Пользователь
 
Регистрация: 25.12.2011
Сообщений: 96
По умолчанию

нашел ошибку Исправил! разобрался!
dimka123 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление записи в таблицу через таблицу Anton911 БД в Delphi 0 14.05.2012 11:51
Добавление данных в таблицу MaxOz БД в Delphi 0 28.02.2012 18:08
добавление в таблицу БД NieL Общие вопросы Delphi 3 16.03.2011 00:25
Добавление записи в таблицу folga БД в Delphi 4 21.04.2010 08:15
ADOQuery, добавление в таблицу. Explosion Помощь студентам 5 18.03.2010 12:06