powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Большая просьба, помогите
8 сообщений из 8, страница 1 из 1
Большая просьба, помогите
    #34585072
_mirror
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
создал таблицу customer, где key_kus первичный ключ. добавляю данные о клиентах из формы
нажатием клавишы

INSERT INTO customer(fio) value (thisform.text1.value)

таблица пуста, первую запись дает сделать, а на второй он выдает

uniqueness of index key_kus is violated
...
Рейтинг: 0 / 0
Большая просьба, помогите
    #34585097
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первичный ключь должен быть уникальный. У у тебя два пустых ключа.
Кстати уникальность распостраняется и на удаленые записи
...
Рейтинг: 0 / 0
Большая просьба, помогите
    #34585099
_mirror
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BurnПервичный ключь должен быть уникальный. У у тебя два пустых ключа.
Кстати уникальность распостраняется и на удаленые записи

каких два?
...
Рейтинг: 0 / 0
Большая просьба, помогите
    #34585109
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>таблица пуста, первую запись дает сделать, а на второй он выдает
А у второй записи какое значение key_kus? И чем она отличается от первой?
...
Рейтинг: 0 / 0
Большая просьба, помогите
    #34585111
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Назначание поля PRIMARY KEY еще не делает автоматическое присвоение уникального ключа - это ваша забота.
Если все равно делай поле автоинкрементным
...
Рейтинг: 0 / 0
Большая просьба, помогите
    #34585130
_mirror
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BurnНазначание поля PRIMARY KEY еще не делает автоматическое присвоение уникального ключа - это ваша забота.
Если все равно делай поле автоинкрементным

я не веду счетчик ключа, должен?

как сделать, чтобы программа вела?
как сделать автоинкрементным
...
Рейтинг: 0 / 0
Большая просьба, помогите
    #34585169
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
create cursor tt (t i autoinc, c c( 10 ))
for i= 1  to  10 
	insert into tt (c) value('dfff')
endfor
brow
...
Рейтинг: 0 / 0
Большая просьба, помогите
    #34585171
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_mirror BurnНазначание поля PRIMARY KEY еще не делает автоматическое присвоение уникального ключа - это ваша забота.
Если все равно делай поле автоинкрементным

я не веду счетчик ключа, должен?
А кто должен? Бил Гейтс?
Необязательно счетчик. Главное уникальность.

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

как сделать автоинкрементным

Из Хелпа:
CREATE TABLE | DBF TableName1 [NAME LongTableName] [FREE]
[CODEPAGE = nCodePage]
( FieldName1 FieldType [( nFieldWidth [, nPrecision] )] [NULL | NOT NULL]
[CHECK lExpression1 [ERROR cMessageText1]]
[AUTOINC [NEXTVALUE NextValue [STEP StepValue]]] [DEFAULT eExpression1]
[PRIMARY KEY | UNIQUE [COLLATE cCollateSequence]]
[REFERENCES TableName2 [TAG TagName1]] [NOCPTRANS]
[, FieldName2 ... ]
[, PRIMARY KEY eExpression2 TAG TagName2 |, UNIQUE eExpression3 TAG TagName3
[COLLATE cCollateSequence]]
[, FOREIGN KEY eExpression4 TAG TagName4 [NODUP]
[COLLATE cCollateSequence]
REFERENCES TableName3 [TAG TagName5]] [, CHECK lExpression2 [ERROR cMessageText2]] )
| FROM ARRAY ArrayName

Еще из Хелпа

Вы можете определять значения автоинкрементного поля Таблицы из Базы Данных или Сволбодной таблицы для поля с типом Integer.

Примечание
Рассматриваемые Автоинкрементные поля не поддерживаются для локальных, удаленных Представлений, а также представлений типа OffLine. При активации автоинкрементных полей, они приобретают характеристику Read-Only, и не могут быть изменены с помощью Операций Insert, Update, Replace, их значения устанавливаются автоматически. Дополнительную информацию смотрите в разделк: Значения Автоинкрементных Полей в Таблицах.


Для установки Автоинкрементной характеристики Поля в Таблице:
Откройте Таблицу в соответствующем Дизайнере (Table Designer).

В соответствующей закладке Fields, выберите требуемое Поле.

В комбинированном Списке Type, установите тип Поля: Integer (AutoInc).

В соответствующей области Дизайнера AutoIncrement, введите начальное значение Автоинкрементного Поля Next Value, а также определите величину Приращения в области Step.

После выполнения всех действий нажмите кнопку OK.

Примечание
Когда вы выбираете указанный тип Поля = Integer (AutoInc), то соответствующий текстовый бокс Default становится недоступным пользователю. Тем не менее, система Visual FoxPro не отвергает имеющееся значение, и не использует его (значение "По-Умолчанию"). Описанный текстовый бокс становиться доступным для редактирования при условии, если вы измените описанный тип поля = Integer (AutoInc). Для определения значения "По-Умолчанию" для данного Поля вы можете определить с помощью соответствующей функции DBGETPROP( ). Если вы намерены использовать значение характеристики Default, вам нужно изменить установленный тип Поля = Integer (AutoInc).


Дополнительную информацию смотрите в разделе: Закладка Fields, Дизайнер Таблиц.

Для установки Автоинкрементной характеристики Поля программным способом:
При создании требуемой Таблицы при помощи команды SQL CREATE TABLE, используйте соответствующую секцию AUTOINC указанной Команды.

-ИЛИ-

Для изменения характеристик Поля существующей Таблицы, сначала откройте таблицу с помощью команды USE, затем используйте команду SQL ALTER TABLE, в которой для требуемого поля используйте секцию (опцию) AUTOINC.

Дополнительную информацию смотрите в разделах: CREATE TABLE - SQL, команда или ALTER TABLE - SQL, команда.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Большая просьба, помогите
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]