
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
30.11.2006, 13:28
|
|||
|---|---|---|---|
странное поведение PACK |
|||
|
#18+
VFP 8.0 На Анлоаде формы висит следующий код: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Или я чего-то не понимаю, или .... Попробовал сделать так Код: plaintext 1. 2. 3. 4. Первичный ключ в sharhldr сделан очень тупо. Там не автоинкремент, а число, и ключ получается с помощью МАХ()+1. И при следующей вставке вылетает ошибка - нарушение уникальности первичного ключа. Если сделать упаковку через среду Фокса, то есть открыть таблицу, выбрать пункт меню "Удалить помеченные поля", то убивается всё хорошо Как разрулить ситуацию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.11.2006, 13:41
|
|||
|---|---|---|---|
странное поведение PACK |
|||
|
#18+
1. Обьясни для чего делать PACK? 2. Если уж очень хочется, то открыть таблицу эксклюзивно Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.11.2006, 14:04
|
|||
|---|---|---|---|
странное поведение PACK |
|||
|
#18+
PaulWist1. Обьясни для чего делать PACK? Повторюсь: Первичный ключ в sharhldr сделан очень тупо. Там не автоинкремент, а число, и ключ получается с помощью МАХ()+1. И при следующей вставке вылетает ошибка - нарушение уникальности первичного ключа. PaulWist2. Если уж очень хочется, то открыть таблицу эксклюзивно Код: plaintext 1. 2. Как я уже и писал, при use table exclu вылетает ошибка на первом паке - таблица должна быть открыта эксклюзивно. Почему - не знаю. Код я привёл. Подскажите, что в нём не так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.11.2006, 14:15
|
|||
|---|---|---|---|
|
|||
странное поведение PACK |
|||
|
#18+
для того чтобы не ругалось на нарушение уникальности перед max()+1 нужно сделать set delete off просто USE - закрывает таблицу в текущей области , поэтому лучше сделать select sharhldr use select Transaction_detail use или use in table_name однако если кто-то уже открыл таблицу , exclusive открытия не произойдет . проверить это можно с помощью ISEXCLUSIVE() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=41&tablet=1&tid=1590271]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
162ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 452ms |

| 0 / 0 |
