Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Добавление записи в DBGrid при помощи запроса SQL 
:(
    Опции темы
Yagmort
Дата 26.6.2009, 13:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 17.6.2009

Репутация: нет
Всего: -1



Цитата(Frees @ 26.6.2009,  13:25)
в BitBtn1Click 
пиши 
Код

DBEdit1.DataSource.dataset.post


Добавлено @ 13:26
Цитата(Yagmort @  26.6.2009,  16:05 Найти цитируемый пост)
http://pic.ipicture.ru/uploads/090626/6EaSpt8cvC.jpg - выдает эту ошибку (


дак ты в ParamByName напиши не ':e1' а 'e1'!!

Добавлено @ 13:32
Цитата(Yagmort @  26.6.2009,  15:57 Найти цитируемый пост)
При таком коде выдает ошибку: http://pic.ipicture.ru/uploads/090626/W4WIKVG2T5.jpg 

поправь
Код

procedure TFD_PAC.BitBtn1Click(Sender: TObject);
begin
DM.ADOQ_PAC.Close;
DM.ADOQ_PAC.SQL.Text:='INSERT INTO pacient (familiya, pol) VALUES (:e1, 0)';
DM.ADOQ_PAC.Parameters[0].Value:=DBEdit1.EditText;
DM.ADOQ_PAC.ExecSQL;
end;
end.

http://pic.ipicture.ru/uploads/090626/4SZLWWni6t.jpg - мне надо так чтоб он добавлял, а не изменял, то что уже есть
-------------------------
Так написать ?
Код

procedure TFD_PAC.BitBtn1Click(Sender: TObject);
var
e1: string;
begin
DM.ADOQ_PAC.Close;
DM.ADOQ_PAC.SQL.Text:='INSERT INTO pacient (familiya, pol, opekun) VALUES (:e1,0,0)';
DM.ADOQ_PAC.Parameters.ParamByName('e1').Value:=DBEdit1.EditText;
DM.ADOQ_PAC.ExecSQL;
end;

Или так ?
Код

procedure TFD_PAC.BitBtn1Click(Sender: TObject);
var
e1: string;
begin
DM.ADOQ_PAC.Close;
DM.ADOQ_PAC.SQL.Text:='INSERT INTO pacient (familiya, pol, opekun) VALUES (:e1,0,0)';
DM.ADOQ_PAC.Parameters[0].Value:=DBEdit1.EditText;
DM.ADOQ_PAC.Parameters.ParamByName('e1').Value:=DBEdit1.EditText;
DM.ADOQ_PAC.ExecSQL;
end;


Выдает ошибку - http://pic.ipicture.ru/uploads/090626/WTjuBKGgNn.jpg






Это сообщение отредактировал(а) Yagmort - 26.6.2009, 13:43
PM MAIL   Вверх
Frees
Дата 26.6.2009, 13:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



а так
Код

DM.ADOQ_PAC.SQL.Text:='INSERT INTO pacient (familiya, pol, opekun) VALUES (:e1,54652,0)';


а вообще смотри что за ограничения на поле pol помоему там запрещены повторы

Добавлено через 3 минуты и 58 секунд

Цитата(Yagmort @  26.6.2009,  16:42 Найти цитируемый пост)
http://pic.ipicture.ru/uploads/090626/4SZLWWni6t.jpg - мне надо так чтоб он добавлял, а не изменял, то что уже есть


положи компонент TDBNavigator

и укажи ему датаСоурце как у грида и жми на нем кнопки какие надо добавить удалить и тд...


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Yagmort
Дата 26.6.2009, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 17.6.2009

Репутация: нет
Всего: -1



Цитата(Frees @ 26.6.2009,  13:45)
а так
Код

DM.ADOQ_PAC.SQL.Text:='INSERT INTO pacient (familiya, pol, opekun) VALUES (:e1,54652,0)';


а вообще смотри что за ограничения на поле pol помоему там запрещены повторы

Добавлено @ 13:49

Цитата(Yagmort @  26.6.2009,  16:42 Найти цитируемый пост)
http://pic.ipicture.ru/uploads/090626/4SZLWWni6t.jpg - мне надо так чтоб он добавлял, а не изменял, то что уже есть


положи компонент TDBNavigator

и укажи ему датаСоурце как у грида и жми на нем кнопки какие надо добавить удалить и тд...

http://pic.ipicture.ru/uploads/090626/tQUoeEDxZ3.jpg - вот ссылка моей таблицы "пациент"  Столбец пол имеет Bit => 0 или 1, я не пойму как так он не может повторятся ? ? ? 
Насчет DBNavigatora я знаю но у меня добавляется при помощи формы и так не очень красиво выглядит... А что с помощью кода разве нельзя добавить ?
PM MAIL   Вверх
Frees
Дата 26.6.2009, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Yagmort @  26.6.2009,  16:54 Найти цитируемый пост)
А что с помощью кода разве нельзя добавить ?

можно, а вот объяснить как это сделать врядли получится...
удачи...

Добавлено через 1 минуту и 43 секунды
http://www.google.com/search?client=opera&...-8&oe=utf-8


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Yagmort
Дата 26.6.2009, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 17.6.2009

Репутация: нет
Всего: -1



Цитата(Frees @ 26.6.2009,  13:57)
Цитата(Yagmort @  26.6.2009,  16:54 Найти цитируемый пост)
А что с помощью кода разве нельзя добавить ?

можно, а вот объяснить как это сделать врядли получится...
удачи...

Добавлено @ 13:59
http://www.google.com/search?client=opera&...-8&oe=utf-8

Причем тут с нуля я не первый раз делаю просто до этого делал на Accesse и все получалось на MySQL сделал и че не правильно ? ....
PM MAIL   Вверх
Frees
Дата 26.6.2009, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Yagmort @  26.6.2009,  17:01 Найти цитируемый пост)
до этого делал на Accesse и все получалось

ох не верю!!


Цитата(Yagmort @  26.6.2009,  17:01 Найти цитируемый пост)
на MySQL сделал и че не правильно

точно также все как и с акцессом!!!


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Yagmort
Дата 26.6.2009, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 339
Регистрация: 17.6.2009

Репутация: нет
Всего: -1



Код

procedure TFD_PAC.BitBtn1Click(Sender: TObject);
begin
DM.ADOQ_PAC.Close;
DM.ADOQ_PAC.SQL.Clear;
DM.ADOQ_PAC.SQL.Text:='INSERT INTO pacient (familiya) VALUES (:e1);';
DM.ADOQ_PAC.Parameters.ParamByName('e1').Value:=Edit1.Text;
DM.ADOQ_PAC.Parameters[0].Value:=Edit1.Text;
DM.ADOQ_PAC.ExecSQL;

DM.ADOQ_PAC.Close;
DM.ADOQ_PAC.SQL.Clear;
DM.ADOQ_PAC.SQL.Add('SELECT familiya,imya,otchestvo,data_rogdeniya,pol,adres,telefon,kollichestvo_detey,semeynoe_pologenie,opekun,gitel,obrazovanie FROM pacient');
DM.ADOQ_PAC.Open;
FormActivate(Self);
end;

все получилось но криво, как можно сделать нормально без лишнего кода, добавляет много записей ))) ? 

Еще вопрос у меня есть поле "pol" в таблице pacient оно у меня bit(1)-типа, при внесении оно у меня ставится только 0 или 1 а как мне сделать так, чтобы вводилось не 0 или 1, а "муж" или "жен" ? Может там нужно тип поменять, если да то на какой ?

Это сообщение отредактировал(а) Yagmort - 27.6.2009, 09:47
PM MAIL   Вверх
Akella
  Дата 29.6.2009, 23:48 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(Yagmort @  26.6.2009,  15:17 Найти цитируемый пост)
все получилось но криво, как можно сделать нормально без лишнего кода, добавляет много записей ))) ? 

Ты сам-то понял, что написал?

Добавлено через 1 минуту и 2 секунды
Цитата(Yagmort @  26.6.2009,  15:17 Найти цитируемый пост)
Еще вопрос 

Модератор: один вопрос - одна тема
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0706 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.