Як редагувати AutoIncrement в таблицях Paradox?
Мені необхідно видалити запис в таблиці з ID-полем типу AutoIncrement, потім її ж додати і тому на неї є посилання в інших таблицях то з тим же значенням поля AutoIncrement. Як це зробити? Конвертація AutoIncrement-> Shot-> AutoIncrement не проходить на другому кроці.
а навіщо видаляти і вставляти. це ж еквівалентно редагування.
Просто є табличка з 12 записами і з нею щось трапилося - Дельфи RecordCount "ом наборів даних показує, що їх 11. Ось я і хотів в новеньку порожню 12 цих записів перекинути, але як потім виставити потрібні Автоінкрементний ID?
робити таблицю з AutoIncrement-те і вставляти записи відповідно до того який він сам зробить. Наче заново табличку заполняеш.
редагування це проти ідеї. можна тільки скинути до максимального значення в таблиці, при пакуванні він начебто так робить.
Але у мене номера йдуть: 17, 18, 21, 23 і т.д. і посилань на кожну не менш як тисячу записів, можна звичайно створити безперервно, а потім непотрібні видалити (19, 20, 22), ну а все таки?
Саме створити а потім видалити. Не знаю як в парадоксі а в Access базі можна тільки так. І тип поля з простого редагованого числа на автоінкремент поміняти не можна (але ж можливостей у ньому більше ніж в парадоксі). Ось нове поле автоікремент створити можна (Alter table add column), воно заповниться відразу по порядку якщо таблиця не порожня.
Для Paradox є тільки один надійний спосіб "корчування коренів"
1.Запрос всіх внешн.ключей по деталях (рез-т зберегти TmpTab)
SELECT DISTINCT ExtrnKey / * Зовнішній ключ * /
FROM "Detail"
2. Видалити ключі, у яких є "вершки"
DELETE FROM "TmpTab" D
WHERE (D.ExtrnKey IN (SELECT M.Key FORM "Master"))
3. Додати в Майстер "вершки" для кожного кореня.
INSERT INTO "Master" (Key)
SELECT ExtrnKey FROM "TmpTab"
Як думаєш для чого в назві два кореня Auto і Increment
Не зовсім зрозумів, до чого (чи кому) це сказано
Це до теми AutoIncrement
Наскільки я вас зрозумів, запитувач взагалі даремно використовував цей тип як Гл.ключа в зв'язці. Якщо так, то я, звичайно, повністю згоден.
Чому ж даремно? досить зручно в більшості випадків.
просто є правило, якщо щось робиться автоматично то воно додає стільки ж гумором від скількох і позбавляє для збереження рівноваги. -)
подобається? сам придумав!
Даремно чи ні це окреме питання, а ось якщо йому потрібно не Auto і тим більше не Increment, то одназначно даремно, а ось якщо він ще його і для зв'язку використовує, то в Парадоксі це могила, хоча і без зв'язку могила. Улюблений питання в різного роду конференціях, у мене звалилося, що тепер робити. Парадокс непрлохо працював в Досі в однозадачних, що не мережевих конфігураціях, а понад це це просто парадокс
Ну вже Вам повинно бути добре відомо, що в Досі Парадокс ЧУДОВО (мало не лучне всіх інших) працював в МЕРЕЖЕВИХ конфігураціях.
При конвертації Auto-Short-Auto замість Short використовуй Integer (
за умови, що не побудована довідкова цілісність)
Пам'ять: 0.75 MB
Час: 0.036 c