На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА · FAQ раздела Delphi
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Обязательно указание:
1) типа базы данных (Paradox/Oracle/Interbase и т.п.)
2) способа доступа к базе данных (ODBC/ADO/DAO/BDE и т.п.)
Например: Paradox/BDE, MS Access/ADO

Наиболее часто задаваемые вопросы:
Базы даных для начинающих. Первые шаги. Понятие о BDE.
Переход на клиент-сервер и начала ADO
Приёмы работы с BLOB (OLE/Memo) полями
Запросы и параметры или как избавиться от многих проблем. Проблемы с датами в запросах.
Нужели мне нужно устанавливать BDE? (или почему не работает программа на другом компьютере)
Модераторы: Bas, Rouse_
Страницы: (3) 1 [2] 3  все  ( Перейти к последнему сообщению )  
> alter table дает warning, который в Delphi возвращается как raise
    Цитата Bas @
    Зачем? Это другой вопрос.
    Разве что - в учебных целях. Попробовать что ли создать оракловую базу скриптом? :D Со всеми причиндалами...
      Цитата LMM @
      Разве что - в учебных целях.


      Мир огромен и разнообразен. Ни oдин человек не может об’ять и понять все детали мира.

      ЗЫ: MS распространяет апгрейты своего продукта Great Planes не путем передачи скриттов администраторам баз даннных клиентов, а путем рассылки экзешника, который выполняет DDL скрипты.

      ЗЫЫ: Ето - как черный лебедь. Никто ме мог и подумать, что черные лебеди существуют, пока не открылы Австралию.
      Сообщение отредактировано: MIF -
        Мож в холивары переберёмся? :popcorn:
          Да уж, давайте без специфики отечественных форумов - человек спрашивает, как сделать X, а ему многословно доказывают, что он дурак :)
            Цитата Fr0sT @
            Да уж, давайте без специфики отечественных форумов - человек спрашивает, как сделать X

            Х это мало, возьмем Z. Мы предложили варианты.

            Добавлено
            Цитата Fr0sT @
            что он дура

            Это Форум, тут нет дураков ,тут есть общение ....
              уххх, понаписали :)

              объясняю:
              есть некий сервис, в котором появляются данные в xml-файлах.
              моя софтина должна выкачивать новые файлы, формировать из них плоскую таблицу и заливать эти данные в одну большую таблицу фактов для олап-куба.

              так вот. В этих xml-файлах иногда появляются лишние поля (атрибуты). На всякий случай (для будущих реализаций) эти поля добавляются в т.фактов.
              И при попытке добавить поле, появляется варнинг от СКЛя, который вызывает исключение в приложении. Об этом и была создана эта тема.
                Цитата Voice @
                Об этом и была создана эта тема.


                Цитата Voice @
                на Дельфи7 через АДО пытаюсь добавить поле в таблицу базы MSSQL2000:

                Где внешний источник? Даже намека нет на xml источника ADO(ActiveX Data Objects).
                Вот и ответы.
                  Цитата Bas @
                  Где внешний источник? Даже намека нет на xml источника ADO(ActiveX Data Objects).

                  Я так понял, у него нет именно источника xml, просто читает. Потому и не упоминал
                    Voice
                    Я в базе от MS в Business Contact Manager видел такой пример:
                    Они сделали заранее лишних 50 полей, в другой таблице названия этих полей и кол-во используемых. И если нужно новое поле,они физически не изменяет базу.
                      Цитата ^D^ima @
                      Они сделали заранее
                      Всё лучше, чем по живому менять структуру!
                        Добавь таблицу с тремя полями: айди записи в первой таблице, имя тега, содержание тега. Все неоые теги можно туда записывать без необходимости изменять структуру на ходу.
                        А новые поля можно добавлять по результатам анализа содержания таблицы. Если тегипоявился один раз, то его можно проигнорировать, а если часто, то включить в основную таблицу.
                          Цитата LMM @
                          Всё лучше, чем по живому менять структуру!

                          +++++

                          Цитата ^D^ima @
                          Они сделали заранее лишних 50 полей

                          Зачем??? Вы не помните когда 256М это было "счастье"
                          Цитата ^D^ima @
                          И если нужно новое поле,они физически не изменяет базу.

                          Если надо больше параметров , чем Выше изложеннон?
                            Больше 50 кастомных полей не разрешается
                              Цитата Bas @
                              Где внешний источник? Даже намека нет на xml источника ADO(ActiveX Data Objects).
                              Вот и ответы.


                              Цитата Fr0sT @
                              Я так понял, у него нет именно источника xml, просто читает. Потому и не упоминал

                              правильно. Xml я обрабатываю сам.
                              Потом формирую запрос вида:
                              ExpandedWrap disabled
                                insert into (...)
                                select 'qwe', 'rty'...

                              этот запрос уходит через ADO. Если я вижу лишнее поле, то пытаюсь его добавить (ессно ПЕРЕД вставкой данных). Ну и там вываливается вышеописанная ошибка.

                              Цитата MIF @
                              Добавь таблицу с тремя полями: айди записи в первой таблице, имя тега, содержание тега. Все неоые теги можно туда записывать без необходимости изменять структуру на ходу.

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

                              LkpFields:
                              idFieldName
                              1Field1
                              2Field2
                              ......


                              MainTbl
                              RowIdFieldIdAValue
                              11aaa
                              12bbb
                              21ccc


                              Да, я думал так сделать. Но тогда имеем гемор с получением плоских данных (таблица фактов) для олап-куба.
                              Т.е. преобразовать можно, но получим вышеописанные проблемы с добавлением кучи новых полей.

                              Т.е. на выходе мы все равно должны получить плоскую таблицу. Так проще это делать сразу.
                                Цитата Voice @
                                на выходе мы все равно должны получить плоскую таблицу
                                Или результат запроса из мастер-таблицы и связанных с ней данных в ещё каких-то таблицах.
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (3) 1 [2] 3  все


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0462 ]   [ 16 queries used ]   [ Generated: 28.03.24, 18:03 GMT ]