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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2009, 18:33   #11
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

В целом не должно быть особых проблем, ведь есть SQl Builder( правая кнопка на размещенном компоненте SQL), в целом там даже языка SQL практически знать не надо просто выбрал таблицы и условия которые хочешь и код автоматически создается. А потом уже подправляешь вручную если надо конечно.
А потом как говорилось этот SQL связываешь с DBGrid
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 06.05.2009, 19:01   #12
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

Попробовал Ниче, интересно. А вы бы не могли скинуть пример кода для связки двух таблиц, чтобы более понятно стало? Или если есть ссылка о том, где можно почитать на русском о работе SQL Builder-a и где пример показывается. Есть у кого нибудь ссылка?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 06.05.2009, 19:16   #13
Dark_Spirit
Форумчанин
 
Аватар для Dark_Spirit
 
Регистрация: 05.02.2009
Сообщений: 324
По умолчанию

Код:
select t1.<field_name1>, t2.<filed_name1> from table1 as t1, table2 as t2
where t1.<field_name3>=t2.<field_name3>
это простой SQL-чик, который отображает значения 2-ух полей разных таблиц связаных по какому-то условию, ну или по 3-му полю как в
примере.
Код:
 select * from table1 where table1.id=nomer21
ну тип так можно по ИД вытянуть данные из таблицы
ЭТО ТОЛЬКО ПРИМЕР.
Тяжело быть бестолковым.....
Dark_Spirit вне форума Ответить с цитированием
Старый 06.05.2009, 19:32   #14
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

А datasource Query надо настраивать?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 06.05.2009, 19:35   #15
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

Лично я видел только в одном месте упоминание о нем(SQL Builder) на 2 страницы в книге Delphi 5 Руководство разработчика баз данных Фаронов Шумаков. на 170 странице.
Но там ничего сложного нет. Указываешь сначала, где располагается база данных путь, потом выбираешь таблицы по очереди добавляешь. Потом ставишь галки для выбранных полей. А внизу условия выбираешь.
В принципе интуитивно можно разобраться. Когда запрос создан лишнее из него просто удаляешь если надо.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Старый 06.05.2009, 19:53   #16
Dark_Spirit
Форумчанин
 
Аватар для Dark_Spirit
 
Регистрация: 05.02.2009
Сообщений: 324
По умолчанию

Цитата:
А datasource Query надо настраивать?
обязательно по аналогии с тем как вы настраивали для компонента Table
Тяжело быть бестолковым.....
Dark_Spirit вне форума Ответить с цитированием
Старый 07.05.2009, 12:33   #17
Абдуллаев Рустам
Пользователь
 
Регистрация: 01.05.2009
Сообщений: 37
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Можете привести пример такого кода, который бы вытягивал данные по ID?)
В вашем случае(Вы работаете через Table), можно вначале сделать проверку текста Edita на наличие этой записи, а потом уже если ее нет вставлять, а если есть то показать соотв-ее сообщение.
Я делал через ADoquery.
Код:
Adoquery1.sql.text='select Pred_id from predmeti ' 
+'where pred_name='+chr(39)+edit1.text+chr(39);
Adoquery1.active:=true;
if adoquery1.fields[0].asinteger<>0
then
begin
showmessage('Такой предмет есть');
exit;
end
else
{ВАША процедура вставки }
mol4ok
Абдуллаев Рустам вне форума Ответить с цитированием
Старый 07.05.2009, 12:36   #18
Абдуллаев Рустам
Пользователь
 
Регистрация: 01.05.2009
Сообщений: 37
По умолчанию

Цитата:
Сообщение от artemavd Посмотреть сообщение
Можете привести пример такого кода, который бы вытягивал данные по ID?)
Цитата:
Сообщение от artemavd Посмотреть сообщение
Можете привести пример такого кода, который бы вытягивал данные по ID?)
В вашем случае(Вы работаете через Table), можно вначале сделать проверку текста Edita на наличие этой записи, а потом уже если ее нет вставлять, а если есть то показать соотв-ее сообщение.
Я делал через ADoquery.
Код:
Adoquery1.sql.text='select Pred_id from predmeti ' 
+'where pred_name='+chr(39)+edit1.text+chr(39);
Adoquery1.active:=true;
if adoquery1.fields[0].asinteger<>0
then
begin
showmessage('Такой предмет есть');
exit;
end
else
{ВАША процедура вставки }
mol4ok
Абдуллаев Рустам вне форума Ответить с цитированием
Старый 07.05.2009, 16:47   #19
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,206
По умолчанию

А вот как я понял, то результат запроса, который я, например, сделал через SQL Builder, отображается в новом окне в новом гриде. А как сделать, чтобы я сам мог указать в какой DBGrid выводился результат?
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума Ответить с цитированием
Старый 07.05.2009, 16:54   #20
ArtInt
Форумчанин
 
Аватар для ArtInt
 
Регистрация: 06.03.2009
Сообщений: 583
По умолчанию

dBgrid связан с Datasource , а он с Query. Значит изменяем там свойства.
Не стыдно чего-то не знать, стыдно не стремиться к знаниям.
ArtInt вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу создать условия Еленка Помощь студентам 4 21.05.2008 12:20
Пропуск условия if. Delphi 7 Дикий Помощь студентам 11 12.05.2008 22:49
Оператор условия [Smarik] Помощь студентам 8 22.02.2008 18:49
Проверка условия Luciferium БД в Delphi 1 05.06.2007 16:23