Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на Delphi

Выпуск № 098
от 14.11.2002, 23:50

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 278
Отправлено ответов: 491
Активность: 176.6 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

baldr
Статус: Профессиональный
Общий рейтинг: 114.82
URL: Сайт об ОС DOS. Всем, кто любит эту ОС!
[Подробней >>]
Idle Sign
Статус: Доверительный
Общий рейтинг: 146.73
[Подробней >>]
Vladimir
Статус: Опытный
Общий рейтинг: 110.36
Телефон: (08242) 43599 40099 раб 41255 дом
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 267. Помогите пожалуйста решить проблему с обработкой исклучительных ситуаций в БД. Короче у меня выводит... (ответов: 1)
Вопрос № 268. Как сделать так чтобы в БД 2 поля вместе взятые были уникальны? Например номер пасспорта и фамилия.... (ответов: 1)
Вопрос № 270. Здравствуйте эксперты. У меня такой вопрос, как сделать, чтобы визард устанавливал мою программу. Ес... (ответов: 1)
Вопрос № 272. Доброе время суток, эксперты. Необходимо узнать код нажатой кнопки. Как? ... (ответов: 2)

Вопросов: 4, ответов: 5


 Вопрос № 267

Помогите пожалуйста решить проблему с обработкой исклучительных ситуаций в БД. Короче у меня выводится ошибка Key Violation. Короче я понял причину - это повторение полей в primary index(key). Но я немогу сдеать так чтобы при ошибке выводилось мое сообщение а не системное(key violation). Вернее мое выводится единожды а потом только системное. Ниже код. Может использовать глобальный обработчик иск. ситуаций? как?
Спасибо!!!


Приложение:


Вопрос отправлен: 07.11.2002, 22:58
Отправитель: dude

[Следующий вопрос >>] [Список вопросов]

Отвечает baldr

Добрый день, dude !
Скорее всего, ошибка твоя в том, что ты выбрал поле для primary key изменяемым пользователем.
И при добавлении/изменении ты это поле изменяешь сам, не смотря на его уникальность. Вообще,
для полного вопроса лучше бы ты указал параметры таблицы, а то совершенно непонятно, где у
тебя какие индексы и вообще какова структура таблицы?? Могу пока что посоветовать сделать
первичным ключом автоинкрементное поле, как ты и хотел в первый раз, а потом к этому полю
ВООБЩЕ НИГДЕ не обращаться. Можешь завести себе вторичные индексы по любым полям...
Индексы, кстати говоря, штука довольно капризная... При работе paradox-базы по сети BDE сам
не обновляет индексы, а база этого сделать не может, если ресурсы используются в это время
другим клиентом (при создании базы данных с разделяемыми файлами). У меня уже в написанной базе
каждые два дня появлялась ошибка "index out of date", с которой я так и не смог бороться...
Пришлось делать базу не через TTable, а через связку TDataBase+TQuery. Кстати, через TQuery
довольно удобно работать - попробуй!


Ответ отправлен: 08.11.2002, 00:40
Отправитель: baldr


 Вопрос № 268

Как сделать так чтобы в БД 2 поля вместе взятые были уникальны? Например номер пасспорта и фамилия. Просто мне ныжен такой эффект как от key. Если их нельзя как то обединить с key то скажите как это можно сделать другим методом?
Спасибо Вам, эксперты!!



Вопрос отправлен: 07.11.2002, 23:46
Отправитель: dude (squeeze_ms@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает baldr

Добрый день, dude!
Можно создать и вторичный индекс тоже. Только никто не гарантирует, что он будет уникальным...
Вообще, текстовое поле не рекомендуется делать ключом. Я советую делать все же через TQuery - там
можно быстро проверить запросом, существует ли такая запись.


Ответ отправлен: 08.11.2002, 00:50
Отправитель: baldr


 Вопрос № 270

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



Вопрос отправлен: 10.11.2002, 14:44
Отправитель: chiv (chiv2607@yandex.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Idle Sign

Доброе время суток, chiv!
===== Pro bono publico, no bloody panico! =====
Желаешь подробный ответ - задавай корректный вопрос.
Какой визард ты имеешь в виду? Инсталлятор типа Install Shield, Wise Installer, Windows Installer, Ghost и иже с ними? Если так, то тебе нужно читать документацию по данным установочным пакетам.
А если ты про то как его в Дельфе написать, так это тема моей следующей научной диссертации :) Если серьезно, то все зависит от тебя, а методы написания ограничиваются только твоей фантазией...


Ответ отправлен: 12.11.2002, 13:19
Отправитель: Idle Sign


 Вопрос № 272

Доброе время суток, эксперты.
Необходимо узнать код нажатой кнопки.
Как?



Вопрос отправлен: 11.11.2002, 23:48
Отправитель: Chainik

[Следующий вопрос >>] [Список вопросов]

Отвечает Vladimir

Доброе время суток, Chainik!
Непонятно, что значит код, но попробуй использовать ActiveControl. Эта функция возвращает много интересной информации об активном элементе.


Ответ отправлен: 12.11.2002, 09:24
Отправитель: Vladimir


Отвечает Idle Sign

Приветствую Вас, Chainik!
===== Pro bono publico, no bloody panico! =====
При нажатии клавиши системе отсылается сообщение, его-то и нужно ловить. К примеру Msg: TMessage, тогда msg.LParamLo - модификатор нажатой клавиши (e.g.MOD_CONTROL), а (msg.LParamHi - собственно виртуальный код нажатой клавиши (e.g. VK_ADD).


Ответ отправлен: 12.11.2002, 13:19
Отправитель: Idle Sign



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (42)
C / C++ (30)
Perl (9)
Delphi (14)
Pascal (22)
Basic / VBA (11)
Java / JavaScript (12)
PHP (10)
MySQL / MSSQL (8)
Пользователю
Windows 95/98/Me (29)
Windows NT/2000/XP (20)
"Железо" (28)
Поиск информации (14)
Администратору
Windows NT/2000/XP (11)
Linux / Unix (16)
Юристу
Гражданское право (9)
Семейное право (4)
Трудовое право (4)
КоАП (4)

Отправить вопрос всем экспертам выбранной рассылки.




Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное