Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2014.08.17;
Скачать: [xml.tar.bz2];

Вниз

Как установить Firebird вместе с прогой?   Найти похожие ветки 

 
Inovet ©   (2014-01-15 04:46) [40]

> [39] Novicer   (15.01.14 00:42)
> TIBTable

Для статистики?

> [39] Novicer   (15.01.14 00:42)
> К базе конекчусь на OnShow главной формы без ошибок

Мсье знает толк в извращениях.


 
Novicer   (2014-01-15 10:29) [41]

>Inovet С Firebird работаю первый раз, подскажите как надо правильно, если не сложно...


 
Novicer   (2014-01-15 10:32) [42]

>DVM Базу сделал с нуля в IbExperte. После установки проги нужна ее регистрация на сервере или можно просто подключить указав путь к ней?


 
DVM ©   (2014-01-15 10:34) [43]


>  После установки проги нужна ее регистрация на сервере или
> можно просто подключить указав путь к ней?

Просто путь на сервере. А еще лучше алиас сделать и его указывать, тогда не важно где база лежит и при перемещении ее, клиентов перенастраивать не придется (файл aliases.conf в папке сервера).


 
DVM ©   (2014-01-15 10:41) [44]


> Novicer   (15.01.14 10:29) [41]
> >Inovet С Firebird работаю первый раз, подскажите как надо
> правильно, если не сложно...

Ты раздели данные и представление. Формы отдельно, подключение к базе отдельно. Для всяких разных невизуальных компонентов типа соединения с базой данных и пр есть DataModule на него и клади. Подключаться имеет смысл до создания главной формы, ведь как правило от пользователя требуется ввод логина пароля для доступа к базе, поэтому последовательность примерно такова:

1) Старт программы
2) Показ формы с запросом пароля
3) Попытка подключения
4) Если подключились отображаем главную форму, если нет то ошибку и опять к 2) или выход.


 
Novicer   (2014-01-15 10:55) [45]

Сделал подключение через try-except чтобы показать юзеру сообщение об ошибке если что, но для эксперимента изменил имя файла базы и попробовал приконектиться. Вместо сообщения вылетает ошибка IDE "файл не найден". Почему не работает try-except?


 
Romkin ©   (2014-01-16 15:15) [46]


> > Romkin ©   (13.01.14 14:37) [30]> Нет, не достаточно.Почему
> нет? Для клиента, насколько знаю, более чем...

Недостаточно. Нужен еще как минимум firebird.msg и записи в реестре или firebird.conf
Скрипт установки можно найти по пути builds/install/arch-specific/win32/ в хранилище, если что.
И незачем мудрить, ключи описаны в installation_scripted


> TIBDataBase,TIBQuery,TIBTable,TDataSource,TDBGrid,TIBTransaction

1. Забудь о TIBTable навсегда.
2. FB допускает множество транзакций на одно подключение, и это удобно. Их надо распределять в соответствии с логикой изменений. Закрывать их надо обязательно и побыстрее.
3. http://ibase.ru/develop.htm#doc - курс молодого бойца и работу с транзакциями как минимум прочитать полностью.


 
jack128_   (2014-01-16 16:21) [47]


> Закрывать их надо обязательно и побыстрее.

Read/ReadCommited/RecVersion/NoWait может жить сколько угодно без нагрузки на сервер.


 
Novicer   (2014-01-16 16:33) [48]

Как установить курсор на нужную строку DBGrida используя IBQuery.Locatе? Или это нельзя сделать?


 
Ega23 ©   (2014-01-16 17:28) [49]


> Или это нельзя сделать?


Можно.


> используя IBQuery.Locatе?


Так и используешь: IBQuery.Locate  Если найдёт что-то, удовлетворяющее параметрам, то встанет само. Если не найдёт, то не встанет.


 
RWolf ©   (2014-01-16 17:34) [50]


> asail ©   (11.01.14 03:16) [22]
> > Кстати, интербэйсовский gds32.dll вполне может работать
> с сервером FB.

насколько хорошо работает?
а то с fbclient.dll 2.5 → Firebird 1.5 проблемы возникают, например.


 
Novicer   (2014-01-16 17:45) [51]

Пробовал так:
Form1.IBQuery1.Open;
Form1.IBQuery1. Locate ("COL1", Edit1.Text, [loCaselnsensitive, loPartialKey]);
Form1.IBQuery1.Close;
Не узнает компилятор loCaselnsensitive и loPartialKey   :(


 
Novicer   (2014-01-16 17:47) [52]

Огнептиц 2.5, Дельфи 2010, компоненты IBX


 
Novicer   (2014-01-16 17:48) [53]

Тут у товарисча тоже не пашет: http://delphimaster.net/view/3-97965


 
Novicer   (2014-01-16 18:14) [54]

Добавил в uses DB помогло :)


 
Novicer   (2014-01-16 19:07) [55]

Теперь IDE компилит без ошибок но после выполнения
Form1.IBQuery1.Open;
Form1.IBQuery1. Locate ("COL1", Edit1.Text, [loCaselnsensitive, loPartialKey]);
Form1.IBQuery1.Close;
DBGrid очищается, а не ставит курсор на строку с совпадением. Почему?


 
Inovet ©   (2014-01-16 19:15) [56]

> [55] Novicer   (16.01.14 19:07)
> Почему?

Потому что в DBGrid нет данных.


 
Novicer   (2014-01-16 19:38) [57]

Данные в гриде есть, а после выполнения локейт исчезают :(


 
asail ©   (2014-01-16 21:33) [58]


> Romkin ©   (16.01.14 15:15) [46]
>
> > > Romkin ©   (13.01.14 14:37) [30]> Нет, не достаточно.
> Почему
> > нет? Для клиента, насколько знаю, более чем...
>
> Недостаточно. Нужен еще как минимум firebird.msg и записи
> в реестре или firebird.conf

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

> RWolf ©   (16.01.14 17:34) [50]
>
> > asail ©   (11.01.14 03:16) [22]
> > > Кстати, интербэйсовский gds32.dll вполне может работать
>
> > с сервером FB.
>
> насколько хорошо работает?

Подозреваю, что не шибко хорошо. Мы только базовые вещи проверяли (клиент IB 7.5, сервер FB 1.что-то)... Т.е., если использовать только функционал, имеющийся в бородатых версиях ИБ (скажем, 5.хх), то должно работать. Все остальное - не факт.


 
asail ©   (2014-01-16 21:34) [59]


> Novicer   (16.01.14 19:07) [55]
> Теперь IDE компилит без ошибок но после выполнения
> Form1.IBQuery1.Open;
> Form1.IBQuery1. Locate ("COL1", Edit1.Text, [loCaselnsensitive,
>  loPartialKey]);
> Form1.IBQuery1.Close;
> DBGrid очищается, а не ставит курсор на строку с совпадением.
>  Почему?

Вот поэтому...


 
asail ©   (2014-01-16 21:35) [60]


> Novicer   (16.01.14 19:38) [57]
> Данные в гриде есть, а после выполнения локейт исчезают
> :(

Их там нет. Не обманывай нас.


 
Inovet ©   (2014-01-16 21:41) [61]

> [56] Inovet ©   (16.01.14 19:15)
> Потому что в DBGrid нет данных.


> [57] Novicer   (16.01.14 19:38)
> Данные в гриде есть, а после выполнения локейт исчезают :(

В DBGrid данных нет. Так лучше.


 
Novicer   (2014-01-16 21:49) [62]

Нет, так нет и фиг с ними. Как получить true или false в результат поиска без отображения данных в гриде. В эдит ввожу запрос например вишня, в списке базы(одна колонка) перечень продуктов. Хочу узнать есть ли она или нет? Надо использовать sql-запрос чтобы узнать или как-то перебором и сравнением данных в строках  и эдите?


 
Novicer   (2014-01-16 23:38) [63]

Берем данные из эдита, ищем... Если есть то ShowMessage(нашли) а если нет то ShoMessage(нет, звиняй братан) как-то так :)


 
Novicer   (2014-01-16 23:43) [64]

Сделал поиск sql-запросом, данные находит и показывает в dbgrid, а мне их видеть не обязательно, хочу просто знать есть нужное в таблице или нет? По мере надобности можно потом отобразить данные :)


 
Плохиш ©   (2014-01-16 23:47) [65]

Здесь, этому сантехнику, уже основы почитать предлагали или проводят обучение онлайн?


 
Novicer   (2014-01-16 23:59) [66]

Предлагали :) читаю... но пока до профи мне как пешком до Марса :) за три дня с нуля научился как подключиться к базе, как внести данные в базу, как изменить данные, как удалить, как найти точно то шо надо, как найти похожее на то что надо и все это показать себе любимому :) на этом успехи закончились и начались вопросы к профи... ;)


 
Inovet ©   (2014-01-17 09:32) [67]

> [64] Novicer   (16.01.14 23:43)
> хочу просто знать есть нужное в таблице или нет?

SELECT COUNT(*) WHERE
отделным запросом и провереить сколько там вернулось.


 
Novicer   (2014-01-17 10:16) [68]

Можно передать данные из запроса в переменную и уже ее сравнивать?


 
Inovet ©   (2014-01-17 10:26) [69]

> [68] Novicer   (17.01.14 10:16)
> Можно передать данные из запроса в переменную и уже ее сравнивать?

IBQuery1.FieldByName("ChoToTam").AsInteger
или для счётчика известно, что у тебя вообще точно одно поле
IBQuery1.Fields[0].AsInteger


 
Novicer   (2014-01-17 10:45) [70]

И запрос и строки таблицы тип String. Так будет правильно :
if Edit1.text=IBQuery1.FieldByName("Col1").AsString then ShowMessage("Нашли")
В таблице одна колонка Соl1
Я так понимаю можно также не указывать явно имя поля по которому делаю поиск, а указать лишь индекс Fields[0]? Что даст возможность перебора и поиска в цикле по всем полям таблицы. Верно?


 
RWolf ©   (2014-01-17 10:54) [71]


>  [70]

Если приходится прибегать к поиску по полям таблицы, значит, база криво спроектирована. СУБД заточена на поиск по записям.


 
Novicer   (2014-01-17 11:06) [72]

Имел ввиду по записям, "плаваю" пока в терминах огнептички :)


 
Novicer   (2014-01-17 12:06) [73]

Не пашет :( показывает на текущую запись, а нужен поиск...


 
Inovet ©   (2014-01-17 12:17) [74]

> [70] Novicer   (17.01.14 10:45)
> И запрос и строки таблицы тип String

В запросе COUNT, а это Integer.


 
Novicer   (2014-01-17 12:23) [75]

Запрос ввожу в эдит, имел ввиду поисковый запрос, а не sql. По простому: я ищу, а программа говорит есть или нет :) без отображения результата поиска в гриде, как-то так... ;)


 
Inovet ©   (2014-01-17 12:35) [76]

> [75] Novicer   (17.01.14 12:23)

Ты спросил, я ответил

> [67] Inovet ©   (17.01.14 09:32)
> > [64] Novicer   (16.01.14 23:43)
> > хочу просто знать есть нужное в таблице или нет?
>
> SELECT COUNT(*) WHERE
> отделным запросом и провереить сколько там вернулось.

Дальнейшие ответы уже исходя из этого, а ты о другом


 
Novicer   (2014-01-17 12:38) [77]

Каунт считает кол.строк в таблице я так понимаю. Их всегда больше ноля у меня :) интересует конкретно наличие искомой записи...


 
asail ©   (2014-01-17 12:54) [78]


> Novicer   (17.01.14 12:38) [77]
> Каунт считает кол.строк в таблице я так понимаю. Их всегда
> больше ноля у меня :) интересует конкретно наличие искомой
> записи...

А ты в WHERE чаго написал?


 
Novicer   (2014-01-17 12:55) [79]

>asail COL1


 
Novicer   (2014-01-17 12:58) [80]

Хочу добавить в ComboBox все записи из таблицы исключая дублирование. Нужно делать sql-запрос или как-то можно пересмотреть все записи?



Страницы: 1 2 3 вся ветка

Форум: "Прочее";
Текущий архив: 2014.08.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.6 MB
Время: 0.008 c
2-1380095033
darthnihilus
2013-09-25 11:43
2014.08.17
Delphi + Excel 2003


15-1389972997
Пит
2014-01-17 19:36
2014.08.17
Вот говорят, что дельфи не умирает


15-1390422605
Юрий
2014-01-23 00:30
2014.08.17
С днем рождения ! 23 января 2014 четверг


15-1390320023
ошин
2014-01-21 20:00
2014.08.17
ищу фильм. старый


2-1380252356
FIL-23
2013-09-27 07:25
2014.08.17
delphi+powershell





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский