Перейти к содержанию
Форум на Кинопоиске

Языки программирования

Рекомендуемые сообщения

Обсуждаем различные языки программирования (делфи, паскаль...) и вопросы с ними связанные.

--

Собственно первый вопрос задам я :):

Нужно было создать приложение работающее с Базой Данных, чтобы там был поиск по телефону (строка ввода и кнопка, при нажатии которой открывается новая форма с результатами поиска).

Я создал, перепроверил - вроде бы всё правильно, ошибок не нашёл, но программа всё равно почему-то не хочет переходить на новую форму при нажатии на Кнопку поиска всплывает ошибка.

Ошибка:

e83da1aa8de2.png

Код кнопки поиска:

procedure TForm1.Button1Click(Sender: TObject);

begin

telephone:=Edit1.Text;

form1.adoQuery1.Active:=false; // делаем компонент запроса неактивным

form1.adoQuery1.parameters.ParamByName('telephone').Value:=Edit1.Text;

form1.adoQuery1.Active:=true; // делаем компонент активным

Form2.ShowModal; //для отображения результата используем форму

end;

Форма:

dc33fa0b289e.png

SQL:

2dbd0c40c035.png

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/
Поделиться на другие сайты

  • Ответов 277
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Изображения в теме

О боже!:ohmy: тему в топку! Дожились:redface:

Такой теме здесь вообще не место. Люди на форуме приходят расслабляться, а не обсуждать вот эту херь. Уж извините за кипеж...

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224011
Поделиться на другие сайты

Dmitrius

Благодаря подобной фигне, скажу мягче, ты на этом форуме и расслабляешься. (только уже веб-программирование, ну неважно, суть-то понял, я думаю)

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224019
Поделиться на другие сайты

Особо опасен,

Обычно такая ошибка возникает когда ты обращаешься к чему то несуществующему (форма не так названа, а ты обращаешься к ней так..).

Вполне возможно, что та форма которую ты вызываешь не прописана в uses у той формы с которой ты вызываешь её.. В архив проект засунь, посмотрим чего там у тебя не так.

 

Ps: узнаю М.Фленова

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224058
Поделиться на другие сайты

А зачем открывать новую форму для результатов поиска? Фильтруй данные в имеющейся таблице.

 

Исключение говорит о том, что проблема не форме, а в запросе. Ругается на параметры.

При входе в Button1Click, как я понимаю, form1.adoQuery.SQL.text уже заполнен вон тем запросом? А почему столбец и таблица по-русски написаны - ты их так с русскими именами и создавал? Вообще это конечно извращение, лучше по-английски...

 

А еще лучше юзать C# :)

Изменено 30.03.2011 06:41 пользователем BlackTemplar
Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224076
Поделиться на другие сайты

когда ты обращаешься к чему то несуществующему (форма не так названа, а ты обращаешься к ней так..).

 

Дело в том, что насклько я помню, если в конпке есть только код перехода на другую форму без запроса на поиск, то переход нормально осуществляется

 

Вполне возможно, что та форма которую ты вызываешь не прописана в uses у той формы с которой ты вызываешь её.. В архив проект засунь, посмотрим чего там у тебя не так.

 

ой, ну это всё то я должен был нормально сделать :)

В архив проект засунь, посмотрим чего там у тебя не так.

ВОт оно http://depositfiles.com/files/zorum93m7

 

Запускать project1. В архиве почему-то не работат, так что придётся распаковать)

--

А зачем открывать новую форму для результатов поиска?

 

Так сказано в задании :), хотя действительно и так можно было сделать.))

 

Исключение говорит о том, что проблема не форме, а в запросе. Ругается на параметры.

При входе в Button1Click, как я понимаю, form1.adoQuery.SQL.text уже заполнен вон тем запросом? А почему столбец и таблица по-русски написаны - ты их так с русскими именами и создавал? Вообще это конечно извращение, лучше по-английски...

 

Ой, я в этом sql совсем не варю - программа что я написал не работает, но преподаватель сидел минут 15 и не смог разобраться в чём дело.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224080
Поделиться на другие сайты

Ща качнем, глянем :)
Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224081
Поделиться на другие сайты

del Изменено 30.03.2011 05:40 пользователем BlackTemplar
Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224098
Поделиться на другие сайты

йпть, ты в запросе обращаешься к таблице Справочник, который пустой почти и не содержит ничего, а тебе надо обращаться к таблице "Таблица1". Т.е перепиши запрос таким образом:

'SELECT *FROM Таблица1 WHERE Телефон Like:telephone'

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224103
Поделиться на другие сайты

Справочник, который пустой почти и не содержит ничего

Там всего одна строчка, а столбца "телефон" по которому мы ищем и вовсе нет - вот и получается эксепшен, что нет параметра, по которому сработает запрос в бд.

Изменено 30.03.2011 05:59 пользователем BlackTemplar
Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224119
Поделиться на другие сайты

а вообще, вот так лучше написать, удали в AdoQuery текст запроса, и на баттон повесь этот код:

procedure TForm1.Button1Click(Sender: TObject);

begin

 

telephone:=Edit1.Text;

form1.adoQuery1.Active:=false; // делаем компонент запроса неактивным

form1.ADOQuery1.SQL.Text:='SELECT *FROM Таблица1 WHERE Телефон Like:telephone';

form1.ADOQuery1.Parameters.CreateParameter('telephone',ftInteger,pdInput,0,0);

form1.adoQuery1.parameters.ParamByName('teleрhone' ).Value:=Edit1.Text;

form1.adoQuery1.Active:=true; // делаем компонент активным

Form2.ShowModal; //для отображения результата используем форму

 

почему то пробел вставляет тут:

'teleph one',ftInteger,pdInput,0,0);
, его там не должно быть..
Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224126
Поделиться на другие сайты

а вообще, вот так лучше написать, удали в AdoQuery текст запроса, и на баттон повесь этот код:

Из AdoQuery удаляем.

Но запрос в SQL.Text прописывать и создавать параметр только один раз нужно, а в button1click по вышеприведенному коду это будет делаться каждый раз.

 

Я бы сделал так:

form1.ADOQuery1.Active:=False;
form1.ADOQuery1.SQL.text:='Select * From Таблица1 Where Телефон Like :telephone';
form1.ADOQuery1.Parameters.ParseSQL(form1.ADOQuery1.SQL.text, true);

Подготовка запроса отдельно, это должно выполняться только один раз. В обработчик события создания формы можно поместить, например.

Ну и по нажатию кнопки:

procedure TForm1.Button1Click(Sender: TObject);
begin
 form1.adoQuery1.Active:=false;
 form1.adoQuery1.parameters.ParamByName('telephone').Value:='%' + Edit1.Text + '%';
 form1.adoQuery1.Active:=true;
end;

Ну и затем выдергиваешь рез-ты запроса из этого adoQuery1 и делаешь с ними, что хочешь :)

Изменено 30.03.2011 07:22 пользователем BlackTemplar
Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224154
Поделиться на другие сайты

Юзайте Ассемблер, ага :D

 

Мое отношение к программированию варьируется в течение года (в зависимости от близости сессии и наличия предметов в сетке расписания) от - "ну что, нужно позаниматься, полезно же!" и до - "какого черта я пошла на факультет информатики?!". На данный момент довольно сильно недолюбливаю веб-программирование, так как ни C#, ни даже Бейсику нас отдельно не учили, однако все методички по предмету написаны именно на них! И разбирайтесь, как хотите ^^ А еще Microsoft Visual Studio 10 конечно красивый, но дюже глючный.

 

Извиняйте, что не совсем по теме вопроса, но зато по теме топика - наболело :D

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224184
Поделиться на другие сайты

предлагаю отписаться, кто на чём кодит:rolleyes:

я и не подозревал, что у нас тут программеры водятся.

Что касается меня, то знаю Delphi, Php, C# учу по-тихоньку

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224193
Поделиться на другие сайты

На Delphi забил примерно на 2ом курсе, когда начали ООП.

После этого в основном MS Visual C#. MS Visual C++, php редко - делали там какие-то лабы и все :) Ну и на Java приходилось писать несколько непростых програмок, но C# мне удобнее.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224197
Поделиться на другие сайты

4 года училась этой мутотени, наверное умею программировать, но старательно заставляю себя забыть это как страшный-перстрашный сон.

 

Стандартный набор навыков - ассемблер, С/С++, php.

Веб-программирование поинтереснее.

Java - со скрипом, но что-то помню.

 

Какое-то резюме, ей-богу.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224204
Поделиться на другие сайты

У нас вот самые важные и интересные вещи рассказали на 2 и 3 курсах.

Сейчас на 4ом, и я солидарен с Kisyulya - что-то всякой мутотени сильно прибавилось :D

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224223
Поделиться на другие сайты

4 года училась этой мутотени, наверное умею программировать, но старательно заставляю себя забыть это как страшный-перстрашный сон.

 

Стандартный набор навыков - ассемблер, С/С++, php.

Веб-программирование поинтереснее.

Java - со скрипом, но что-то помню.

 

Какое-то резюме, ей-богу.

 

На 20 тысяч в месяц может быть со скрипом и потянет:) В Нерезиновке.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224227
Поделиться на другие сайты

На 20 тысяч в месяц может быть со скрипом и потянет:) В Нерезиновке.

 

Это предложение? ;)

 

Чтобы хорошо зарабатывать, будучи программистом, это надо блин либо уметь это делать быстро и не напрягаясь, либо иметь чугунную задницу и быть готовым тратить кучу времени на работу.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224239
Поделиться на другие сайты

Это предложение? ;)

 

Чтобы хорошо зарабатывать, будучи программистом, это надо блин либо уметь это делать быстро и не напрягаясь, либо иметь чугунную задницу и быть готовым тратить кучу времени на работу.

 

Чтобы хорошо зарабатывать будучи программистом, нужно хорошо программировать и не быть специалистом "обо всем и ни о чем":) Качественный java developer это 70 + тысяч, качественный web components developer - это 100+ тысяч рублей. Вполне себе средства, я щщитаю) Причем это если работать на дядю)

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224251
Поделиться на другие сайты

Чтобы хорошо зарабатывать будучи программистом, нужно хорошо программировать и не быть специалистом "обо всем и ни о чем":) Качественный java developer это 70 + тысяч рублей, качественный web components developer - это 100+ тысяч рублей. Вполне себе средства, я щщитаю)

 

Ога ога, только попробуйте даже с нужными навыками это место получить ;)

 

К тому же понятие качества девелопера весьма и весьма неопределенные. Существует еще такая штука как специфика предприятий, которые подобные вакансии выбрасывают и многое, многое другое.

 

Став "качественным" специалистом на одном месте не факт, что на аналогичное устроишься на те же самые 70+ или 100+, а повышать зарплату сотрудникам в соответствии с повышением их квалификации вообще не в чести у наших руководителей.

 

Я к тому, что все это не просто, а вообще чтобы зарабатывать нормальные средства в любой области надо быть хорошим специалистом не "обо всем и не о чем".

 

 

зы Да, устройство на высокооплачеваемую должность программиста это мое больное место.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224267
Поделиться на другие сайты

и быть готовым тратить кучу времени на работу.

 

Как и на любую другую работу. Она такая.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224272
Поделиться на другие сайты

Как и на любую другую работу. Она такая.

 

Мой опыт подсказывает, что ненормированность рабочего дня у программистов повышенная.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224279
Поделиться на другие сайты

Мой опыт подсказывает, что ненормированность рабочего дня у программистов повышенная.

 

Эммм...

Чтобы хорошо зарабатывать,

Любая работа становится ненормированной.

 

Если "просто" зарабатывать, то возможно.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224297
Поделиться на другие сайты

Эммм...

 

Любая работа становится ненормированной.

 

Если "просто" зарабатывать, то возможно.

 

Мы сейчас вроде исключительно про то, чтобы программировать и хорошо (не за нищебродскую зарплату) зарабатывать.

 

Чтобы ХОРОШО зарабатывать, в смысле ездить на лехусе, это надо уже руководящие должности рассматривать, не совсем то.

Ссылка на комментарий
https://forumkinopoisk.ru/topic/41116-yazyki-programmirovaniya/#findComment-2224306
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Сейчас на странице   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...