Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Открыть новую тему     Написать ответ в эту тему

vshersh



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ProDman
Текст процедуры, в студию!
 
Добавлено:
В общем вот простенький пример, который работает как написал OXDBA

Код:
select  
  d.rdb$relation_id,
  p.x
from rdb$database d
 left join
 test(d.rdb$relation_id) p
  on (0=0)

Всего записей: 506 | Зарегистр. 12-01-2006 | Отправлено: 15:42 27-07-2006 | Исправлено: vshersh, 16:03 27-07-2006
OXDBA

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ProDman
Добавь Suspend в процедуру и будет тебе счастье

Всего записей: 426 | Зарегистр. 19-01-2005 | Отправлено: 17:50 27-07-2006
ProDman

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OXDBA
 
Прошу прощения, за долгое молчание. Дело было действительно в SUSPEND

Всего записей: 24 | Зарегистр. 18-04-2005 | Отправлено: 13:34 09-08-2006
Silla



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Доброго времени суток!
Возможно ли в триггере написать запрос на выполнение
после апдейта и/или после inserta  
если возможно, то как?
Запрос:  
insert into t_doc_arh select id_doc, name, type_doc from t_doc  
where  
t_doc.id_doc = : old_id_doc  
Структуры таблиц одинаковые за исключением того, что t_doc_arh.id_doc not primary key
Зранее спсибо.
 
Добавлено:
Спасибо, уже нашел ответ!
Буду рзбираться
 
Добавлено:
http://www.p-stone.ru/libr/db/interbase/data/public4/

Всего записей: 244 | Зарегистр. 18-11-2004 | Отправлено: 11:40 18-09-2006 | Исправлено: Silla, 11:41 18-09-2006
OXDBA

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Насколько я понял требуется это

Код:
 
insert into t_doc_arh(Field1, Field2 ..)
values (new.field1, new.field2 ...
 

А что мешает использовать стандартный механизм IBExpert'a по созданию и ведению лога наката?

Всего записей: 426 | Зарегистр. 19-01-2005 | Отправлено: 12:35 18-09-2006 | Исправлено: OXDBA, 12:37 18-09-2006
NewbieCnt

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А есть ли стандартные ActiveX/Java applet для запроса клиентских данных из Html, чтобы не надо было компилировать, а просто писать sql запрос например в VB скрипте? Или надо знать какие - то гуиды?

Всего записей: 15 | Зарегистр. 01-09-2006 | Отправлено: 18:07 19-09-2006
igorwz



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые коллеги, помогите пожалуйста определиться с вариантом модернизации базы данных (БД).
Был программный комплекс (ПК), работавший с базой Firebird, содержащей около 80 таблиц (файл БД на сегодня имеет размер около 200 мб), из которых половина - нормативные данные (справочники), другая половина - текущие данные (документы).  
Возникла задача написания 2-го программного комплекса, который бы использовал те же нормативные таблицы, а текущие данные хранил в своих таблицах, структура которых отличается от текущих таблиц 1-го ПК.  
Вопрос: что лучше, с точки зрения минимизации нагрузки на сервер, сеть и клиентские ЭВМ -  
1) добавить таблицы с текущими данными 2-го ПК в существующую базу, при этом работать оба ПК будут с единой большой базой;  
2) разделить существующую базу на две - нормативную и текущую для 1-го ПК, + создать третью базу для текущих данных 2-го ПК, при этом каждый ПК будет работать с двумя файлами БД: единой нормативной базой и своей текущей.

Всего записей: 6 | Зарегистр. 20-11-2004 | Отправлено: 16:03 25-09-2006
DroN_S

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
igorwz
тут уже трёхзвенкой попахивает...
на мой взгляд лучше сделать единую базу, располжить её на серваке и к ней отправлять запросы, сервер всё это дело обработает и вышлет нужную информацию по запросу... затраты должны быть минимальные...

Всего записей: 1143 | Зарегистр. 09-04-2005 | Отправлено: 23:39 25-09-2006
Sexton

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
igorwz, согласен с DroN_S. Хотя последние версии FIBPlus, вроде как, поддерживают работу с несколькими базами одновременно, пользоваться этим имеет смысл только при особой необходимости.

Всего записей: 142 | Зарегистр. 31-05-2004 | Отправлено: 16:06 26-09-2006
pzaytsev

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кто может подсказать инструмент аналогичный BlazeTop SQL Monitor для работы с Firebird 2. На двойке при массивных запросах BT SQL Monitor умирает.  
Devrace (которые выпускают FIBPlus, Athlant, а также BlazeTop) выпустили вместо BlazeTop новый продукт - SQLHammer - но он поддерживает только Firebird 1,5.    
Какие у кого варианты?  
   
IBExpert не предлагать - там только внутренний SQL Monitor.

Всего записей: 402 | Зарегистр. 22-08-2005 | Отправлено: 16:07 26-09-2006
test_testov

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
писать свой

Всего записей: 6 | Зарегистр. 21-09-2006 | Отправлено: 10:22 27-09-2006
pug

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Коллеги! Подскажите -  кто нибудь втречал
Цитата:
"Firebird Руководство разработчика баз данных"
в электронном виде в сети? И ели да, то где?
Спасибо!

Всего записей: 2 | Зарегистр. 11-10-2006 | Отправлено: 12:58 11-10-2006
cryptonium

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
pug
здесь не раз поднимался этот вопрос - пока не нашли
http://forum.ru-board.com/topic.cgi?forum=93&topic=0480&start=0
 
есть возможность попросить ее и отснять - но книжка толстая - а учитывая не очень удобный для этого сканер - вряд ли потяну...

Всего записей: 193 | Зарегистр. 11-01-2003 | Отправлено: 14:55 11-10-2006
travells

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Такой вопрос:
 
D7-FireBird-FibPlus.
Выполняется запрос Select в  DataSet, и юзера работают с ним ...
 
Как сделать так чтоб изменения отображались у второго юзера? Сразу оговорюсь, что юзер2 сидит от юзера1 на растоянии нескольких километров и канал связи слабенький, так что постоянно рефрешить неполучится, может есть какая-то фича что отслеживает изменения в базе и подтягивает только их?
 
А поскольку практического опыта в написании клиент-серверных приложений нет - то и ниче в голову не лезет ...
 

Всего записей: 3 | Зарегистр. 10-08-2006 | Отправлено: 18:33 07-11-2006
OXDBA

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
travells
Как вариант
Обновление клиентских наборов данных в InterBase
 

Всего записей: 426 | Зарегистр. 19-01-2005 | Отправлено: 18:40 07-11-2006
OXDBA

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
travells
P.S. Что касается отслеживания изменений - только руками на триггерах, для примера можно посмотреть как это сделано в IBExpert'е. Cовместить это дело с IbDataSet... в одной из наших реализаций пришлось делать клиенте select в буферный MemoryDataSet, а затем, по необходимости, выбор только изменений из лога наката и модификация этого самого MemoryDataSet'а

Всего записей: 426 | Зарегистр. 19-01-2005 | Отправлено: 10:28 08-11-2006 | Исправлено: OXDBA, 10:29 08-11-2006
travells

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
OXDBA
 
Спасибо за ответ. Теперь буду точно знать, что так просто это ни сделать и  придется ковыряться самому.

Всего записей: 3 | Зарегистр. 10-08-2006 | Отправлено: 11:13 08-11-2006
4fatal



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не знаю в ту ли ветку пишу, но попробую здесь. Проблема следующего рода: есть некая программа написаная ( насколько я понимаю на Microsoft(r) Visual FoxPro), которая хранит данные в нескольких файлах с расширением .gdb. Для ее установки (по справке) необходимо установить Firebird-1.5.0.4201_RC8-Win32 и Interbase client v.5. Раньше один человек за этой программой сидел и горя я не знал, но руководство решило что необходимо еще одному человеку в данную базу набивать данные. По той же справке написано следующее (дословно):
4. Для ручного внесения изменений (Панель управления > Источники данных ODBC > Системный DSN > добавить > INTERSOLV InterBase ODBC Driver (*gdb) > прописываем название базы (Data Source Name),  и путь к базе (Database Name)). Для подключения к серверу NT( //сетевое.имя.комп./c:\base\имя базы). Для 9x (сет.имя.комп:c:\base\имя базы).  
И вот здесь то и начались мои мучения. Ну не работает ни в какую. Пишет либо невозможно подключить файл защиты либо ошибка  подключения. Так как мои познания в SQL и всяких таких делах находятся на уровне того, что я знаю что есть такой зверь SQL ( обитающий где-то в африке ), то соответсвенно я застрял... Подскажите поможет мне Interbase server или нет, а может это вообще не реально? На всякий случай сеть у меня на W 2003 enterprise R2 с контроллером домена, базы я пытался ставить и на клиентские машины (которые на W XP pro SP2) и на сам сервер, со всеми разрешениями к доступу у файлам, со всевозможными вариантами (как расшариванием папки, подключением сетевого диска и пр.) и вообще в каком направлении копать? А может кто подскажет пошаговую инструкцию? Заранее огромное СПАСИБО!

Всего записей: 181 | Зарегистр. 18-09-2003 | Отправлено: 17:18 13-04-2007
RedPromo



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
4fatal
Наверно самая хорошая пошаговая иструкция на ibase.ru
Во первых нужно определится если БД находится на удаленной машине то запущен ли там сервер Firebird.
Расшариванием и подключением сетевого диска можеш даже не пытася заниматся не поможет. Вот как раз для случая если у тебя база находится на удалленой машине и есть
Цитата:
Для подключения к серверу NT( //сетевое.имя.комп./c:\base\имя базы). Для 9x (сет.имя.комп:c:\base\имя базы).  

Если на локальной то хватит и просто пути к БД.
Можно попробовать подконектица с помощу тогоже IBExpert с удаленной машины если все нормально то тогда нужно в другую сторону искать.

Всего записей: 558 | Зарегистр. 05-04-2006 | Отправлено: 18:42 13-04-2007
vserd

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
4fatal
попробуй переписать путь на исходном компе так: сетевое.имя.комп:c:\base\имя базы.
Если программа работает, тогда прописывай на других компах аналогично.
В случае использования синтаксиса \\комп\путь вступают в силу ограничения прав нетбиос. Как там правильно их выставлять я не помню, всего лиш раз недолго с бубном танцевал. А по TCP работает без проблем.

Всего записей: 2065 | Зарегистр. 08-05-2002 | Отправлено: 10:30 16-04-2007
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru