Погода: 1 °C
23.04−3...0пасмурно, без осадков
24.04−6...3облачно, без осадков
  • Имеется некоторый список (база данных А) параметров под нумерацией. При выполнении некоторых условий один из параметров с порядковым номером i базы А должен быть перемещен в другую таблицу (базу данных В). Последующий параметр в базе А должен переместиться на его место с присвоением порядкового номера i, т.е. должна сохраниться в базе А нумерация п/п.
    Как это возможно осуществить… формула…. я не знаю – еще что?
    Спасибо:D

  • Ээээ....
    А какова цена вопроса?

    Скоро 15 year on board. Да - я чуточку странный.

  • Сразу добавлю - формула не пройдет.
    Нужна обработка. И элементарное знание основ работы с СУБД. :ухмылка:

    Скоро 15 year on board. Да - я чуточку странный.

  • пусть поле id;

    тогда два запроса в аксессе, запущеные с одним параметром, выполнят задачу:

    Удаляем запись: (rid - номер удаляемой записи)
    PARAMETERS rid Long;
    DELETE *
    FROM Table1
    WHERE id=rid;

    Теперь меняем индексы:
    PARAMETERS rid Long;
    UPDATE Table1 SET id = [id]-1
    WHERE id>rid;

    в фукнции на VB можно просто два запроса подряд вызвать.

    могу выслать базу с примером.

  • А INSERT INTO Table2 (SELECT * FROM Table1 WHERE Id=Rid) кто делать будет? :ха-ха!:

    Скоро 15 year on board. Да - я чуточку странный.

  • пусть кому надо тот и делает. спросили: как поменять индексы. я ответил. остальные задачи меня не интересуют.

  • > один из параметров с порядковым номером i базы А должен быть перемещен в другую таблицу

    Должен - почти обязан. :ха-ха!:

    А пронумеровать строки UPDATE-м слабо? Начиная с 0...

    Скоро 15 year on board. Да - я чуточку странный.

  • док, успокойся. форум создан для того, чтобы обмениваться информацией, а не искать клиентуру. в данном случае было очевидно, что проще привести простейший но работающий пример, а не отправлять RTFM.

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

  • Сам успокойся.
    Если тебе за каждым деревом поиск клиентуры видится, то это уже клиника. :ха-ха!: :ха-ха!: :ха-ха!:

    Скоро 15 year on board. Да - я чуточку странный.

  • вопрос, если этот номер i является ID кортежа базы А то как видится ситуация когда при переносе в базу Б где также i будет являться ID кортежа номер i будет уже занят?
    Или я условие не правлильно понял?

    Цензура

  • Нуууу...
    Тогда можно будет попытаться влупить, чтобы в INSERT-e какой-нить (Select max(id)+1 from table2) в id запихиваемой записи вставлялся.

    Как-то все-таки мнится мне, чт старые добрые последовательные выборки были бы уместнее...

    Скоро 15 year on board. Да - я чуточку странный.

  • Лично мне кажется вообще что все это гон, зачем переносить УЖЕ ИМЕЮЩУЮСЯ ЗАПИСЬ в другую таблицу? не проще ли сослаться на исходную? Если это действительно другая база - то ID из исходной базы должно быть выделено отдельным полем - тогда все вопросы уникальности снимаются, и задача ограничивается SELECT из исходной базы и INSERT в обновляемой базе

    Цензура

  • Ну, мало ли извращенцев на свете? :миг:

    Скоро 15 year on board. Да - я чуточку странный.

  • >tigo
    Вообще-то не кортежа, а всего одной записи, хотя, конечно, кортеж может состоять и из одной... - это раз.
    Два - а кто сказал, что переносить надо с ТЕМ ЖЕ id?

  • я так постаноку задачи понял...вообще действительно не надо переносить...

    Цензура

Записей на странице:

Перейти в форум

Модератор: