Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.19;
Скачать: CL | DM;

Вниз

Ошибка в TIBQuery   Найти похожие ветки 

 
Ivan_   (2004-11-15 19:05) [0]

Подскажите плиз как так может быть. Добавляю новое поле в запрос TIBQuery и далее при "Fields Editor" -> "Add Fields" Выпадает ошибка "Dinamic SQL error code =-206 Column unknow TABLENAME.COLUMNNAME". Такое поле  TABLENAME.COLUMNNAME точно есть в таблице. Закрытие и открытие проекта и Делфи целиком не помогает. Может есть еще какие-нить способы шаманства?


 
Соловьев ©   (2004-11-15 19:10) [1]


> TABLENAME.COLUMNNAME

Ужас, как ты потом в этом разбираешся?
а если новый проект и попробовать там добавить по новой поля?


 
Ivan_   (2004-11-15 19:19) [2]

не ну название TABLENAME.COLUMNNAME я написал для того чтобы несло в данном случае смысл тк реалное название поля мало что скажет. Я пробовал добавлять новые поля и ни одного из них не видно. Может надо заставить Делфю как то перечесть насильно все поля таблицы?


 
Соловьев ©   (2004-11-15 19:22) [3]


> Может надо заставить Делфю как то перечесть насильно все
> поля таблицы?

Ах, да чуть не забыл, gds32.dll кеширует мета-данные. Если ты добавил поле, допустим в експерте, и тут же его хош увидеть в делфи, то фиг вам... Надо перезапустить проект.


 
Ivan_   (2004-11-15 19:27) [4]

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


 
Соловьев ©   (2004-11-15 19:28) [5]


> Я уж пробовал и проект и делфю и компутер, пробовал вместо
> звездочки указать реальное имя поля и в этом случае он выдает
> выше описанную ошибку, а если указать "*" в селекте то не
> видет вообще поля и ошибки не выдает. А попробовал добавить
> новый компонент и при обращении к нему из наследованной
> формы получаю ошибку доступа к памяти.

А если новый проект?
http://ibase.ru/ibx/ibx608del.zip - попробуй поставить еще.


 
Ivan_   (2004-11-15 19:44) [6]

он переписывает системные библиотеки? Если да то я не могу его ставить, тк это рабочий проект и надо запускать везде по цепочке в верх. Я не тестировал и не знаю к каким последствиям это приведет. Может есть еще способ?


 
Ivan_   (2004-11-15 20:54) [7]

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


 
Sergey_Masloff   (2004-11-15 22:12) [8]

Соловьев ©   (15.11.04 19:22) [3]
>Ах, да чуть не забыл, gds32.dll кеширует мета-данные. Если ты >добавил поле, допустим в експерте, и тут же его хош увидеть в >делфи, то фиг вам... Надо перезапустить проект.
Вы б когда пургу несете добавляли что-то типа ИМХО, AFAIK и др. подобное. А то ведь введете новичков в заблуждение...


 
Johnmen ©   (2004-11-15 22:13) [9]

Главный вопрос - что ты имеешь в виду по полями запроса и как ты их добавляешь ?


 
GanibalLector ©   (2004-11-15 22:47) [10]

двойной клик по IbQuery...удали все поля,создай заново.Тоже самое проделать с Grid-ом...Судя по всему у тебя лишним полем пахнет.


 
Соловьев ©   (2004-11-16 10:28) [11]


> Вы б когда пургу несете добавляли что-то типа ИМХО, AFAIK
> и др. подобное. А то ведь введете новичков в заблуждение...

Проведи экперимент. А потом делай заявления.


 
Соловьев ©   (2004-11-16 10:29) [12]


> он переписывает системные библиотеки? Если да то я не могу
> его ставить, тк это рабочий проект и надо запускать везде
> по цепочке в верх. Я не тестировал и не знаю к каким последствиям
> это приведет. Может есть еще способ?

Кто переписывает? Патч? Это официальный патч от Борланда, не хош не ставь :)
Способ - попробовать на чистом проекте.


 
Ivan_   (2004-11-16 12:42) [13]

Поставил патч, адрес которого указан выше. Но получилось так что он мне переписал библиотеки нескольких компонент, то что делал BackUp в Xp не помогло, теперь работы немножко прибавилось, просто запустить проект. Может где-нить бубны шаманские продаются, или я здорово протупил где-то? Но ранее такие манипуляции проводил не один десяток раз и как бы работало. Большое спасибо что приняли участие в обсуждении безнадежного дела. Придется удалять гланды другим путем.


 
Соловьев ©   (2004-11-16 12:49) [14]

Т.е. на пустом проекте: IBDatabase+IBTransaction+IBDataSet
поля также глюячат?


 
Ivan_   (2004-11-16 12:53) [15]

не на пустом не пробовал, все глюки только с обной таблицей. Делаю join с другой таблицей и никаких проблем, делаю на этой же форме запрос к другой таблице все ок. Права данной таблицы позволяют приложению работать.


 
Соловьев ©   (2004-11-16 12:53) [16]


> не на пустом не пробовал,

Блин, а почему?


 
Shaman_Naydak   (2004-11-16 13:06) [17]

То есть в IbExpert это поле видно, если туда скопировать
select из формы, а в дельфях нет?
Хм... 1я версия.. маловероятная.. может имя поля не нравится дельфям.. ты его приведи.. но это очччень маловероятная версия
А как ты поле добавляешь.. Жмакаешь пимпочку AddAllFields?

2 версия.. ты исхитрился гранты на поле не дать.. а дельфи у тя в дизайне коннектится не под админом и не видит.. проверь, однако


 
Ivan_   (2004-11-16 13:15) [18]

не в новом проекте такая же батва не могу добавить два новых поля в той же таблице.


 
Ivan_   (2004-11-16 13:22) [19]

добавил в другую таблицу новое поле связал join-ном и так же не могу добавить поле в TIBquery


 
Ivan_   (2004-11-16 13:26) [20]

я копирую запрос из Эксперта (там он работает) и пытаюсь кликнуть AddFields и вылазит ошибка 206. А гранты у меня стоят для этого приложения и для Public полностью


 
Соловьев ©   (2004-11-16 13:27) [21]


> я копирую запрос из Эксперта (там он работает) и пытаюсь
> кликнуть AddFields и вылазит ошибка 206. А гранты у меня
> стоят для этого приложения и для Public полностью

а есть там данные? Может грохни ты эту таблицу, и создай по новой?


 
stud ©   (2004-11-16 13:30) [22]

а сам запрос?


 
Ivan_   (2004-11-16 13:38) [23]

Спасибо большое за советы я здорово протупил. У меня строка коннекта прописана в реестре и я предпологал что он и смотрит на тот сервак который прописан в реестре, но оказывается что он смотрит на DataBaseName. Извините за беспокойство, спасибо еще раз.


 
Sergey_Masloff   (2004-11-16 20:47) [24]

Соловьев ©   (16.11.04 10:28) [11]
>Проведи экперимент. А потом делай заявления.
Ну, наверное я за 8 практически лет работы с IB таких экспериментов напроводился. Рекомендую прочитать пару статей про версионность МЕТАДАННЫХ и ее реализацию в IB.


 
Соловьев ©   (2004-11-17 10:32) [25]


> Ну, наверное я за 8 практически лет работы с IB таких экспериментов
> напроводился. Рекомендую прочитать пару статей про версионность
> МЕТАДАННЫХ и ее реализацию в IB.

У меня тоже опыть есть не 8 лет, но достаточный. Запусти Експерт, создай таблицу, добавь поля. Потом закрой проект. Открой. Открой закладку Дата у таблицы. Посмотри сколько полей. Иди на закладку метаданных. и добавь еще поле. Иди опять на закладку дата. Сколько полей? Новое поле ты увидишь после переконнекта, когда, gds32.dll перечитает метаданные.


 
Mike Kouzmine ©   (2004-11-17 10:44) [26]

Соловьев ©   (17.11.04 10:32) [25] Правда? А я думал достаточно переоткрыть базу и обновить поля.


 
Соловьев ©   (2004-11-17 10:45) [27]


> А я думал достаточно переоткрыть базу

А что по твоему переконнект?


 
Mike Kouzmine ©   (2004-11-17 11:15) [28]

Соловьев ©   (17.11.04 10:45) [27] Ты говорил - перезапустить проект.


 
Соловьев ©   (2004-11-17 11:17) [29]


> Ты говорил - перезапустить проект.

Это я говорил про делфи


 
Соловьев ©   (2004-11-17 11:19) [30]

Хотя, в делфи, достаточно, переоткрыть IBDatabase


 
Sergey_Masloff   (2004-11-17 20:09) [31]

Соловьев ©   (17.11.04 11:19) [30]
Ты описываешь наблюдаемое явление но даешь ему неверное объяснение. Именно на это я пытаюсь указать.
 Если ты не переоткрывая соединение с базой данных откроешь соединение с другого компьютера то вновьдобавленное поле ты тоже не увидишь. Каким образом gds32 на другом компьютере так хитро кэширует? Как думаешь?


 
Соловьев ©   (2004-11-18 10:06) [32]


> Как думаешь?

Я думаю что gds32.dll кеширует метаданные. Не так ли?


 
Sergey_Masloff   (2004-11-18 20:50) [33]

Соловьев ©   (18.11.04 10:06) [32]
>Я думаю что gds32.dll кеширует метаданные. Не так ли?
Вы так только думаете или этому есть реальные подтверждения? То что вы приводите в пример подтверждением этого факта не является. Итак, факты в студию.



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

Текущий архив: 2004.12.19;
Скачать: CL | DM;

Наверх




Память: 0.55 MB
Время: 0.026 c
3-1100872553
Dionnis
2004-11-19 16:55
2004.12.19
Поиск по базе ...


1-1101847447
serko
2004-11-30 23:44
2004.12.19
Печать!


14-1101568573
OneFragLeft
2004-11-27 18:16
2004.12.19
Налоги.


14-1101990965
by
2004-12-02 15:36
2004.12.19
ECO, MDA и прочие новомодные технологии. Использует ли кто их?


14-1101910349
syte_ser78
2004-12-01 17:12
2004.12.19
как лечится?