Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Повторяющиеся данные / 10 сообщений из 10, страница 1 из 1
18.05.2017, 16:12
    #39455503
a.sonnova
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
Добрый день! Подскажите, пожалуйста, можно ли при создании таблицы в Access записать условие, чтобы одинаковые данные в одном столбце могли повторяться не более 2 раз? И если можно, то как это сделать?
...
Рейтинг: 0 / 0
18.05.2017, 16:35
    #39455526
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
a.sonnova,

Можно используя макросы данных для таблиц, он должен проверять колличество существующих строк перед вставкой. Также можно делать проверку в коде формы. Непосредственно на таблицу такой констрейн не сделаешь, только индексы , проверяющие уникальность поля.
...
Рейтинг: 0 / 0
18.05.2017, 16:44
    #39455534
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
MrShinНепосредственно на таблицу такой констрейн не сделаешь,легко
...
Рейтинг: 0 / 0
18.05.2017, 17:18
    #39455561
a.sonnova
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
MrShin,
Можете, пожалуйста, подсказать условие выражения, если делаю через макрос данных?
Если ....[название столбца]..., то
...
Рейтинг: 0 / 0
18.05.2017, 19:35
    #39455640
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
a.sonnova, вот тут я ставлю ограничение на ввод в таблицу не более 1000 записей. Поправь условия и будет не больше двух.
...
Рейтинг: 0 / 0
19.05.2017, 07:11
    #39455776
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
ПанургПоправь условия и будет не больше двух
Вопрос в том, чтобы не количество строк ограничить, а данных в определенном столбце должно быть не более определенного числа. Честно говоря, не знаю, как можно прописать условие с переменной в чек констрейне. Есть идеи?
...
Рейтинг: 0 / 0
19.05.2017, 08:34
    #39455801
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
a.sonnovaMrShin,
Можете, пожалуйста, подсказать условие выражения, если делаю через макрос данных?
Если ....[название столбца]..., то

Код: vbnet
1.
2.
3.
4.
5.
If Updated("Field1") And DCount("*","Table1","Field1=" & [Field1])>=2 Then
    RaiseError
        Error Number 12345
        Error Description Слишком много строк
End If
...
Рейтинг: 0 / 0
20.05.2017, 18:03
    #39456647
Verbovsky Innokenty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
Как вариант: добавить в таблицу логическое поле и создать уникальный индекс на два поля. Но придется заполнять логическое поле
...
Рейтинг: 0 / 0
20.05.2017, 19:31
    #39456663
Verbovsky Innokenty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
Примерно так:
CREATE TABLE tb (ID counter NOT NULL Primary KEY, f1 int NOT NULL, f2 bit NOT NULL )
CREATE UNIQUE INDEX tb_IX ON tb(f1,f2)

INSERT INTO tb (f1,f2) VALUES (1, (SELECT COUNT(*) FROM tb WHERE f1=1 AND f2=0))

На встроенный запрос, к сожалению, ругается, но смысл должен быть понятен )
...
Рейтинг: 0 / 0
22.05.2017, 04:08
    #39457014
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Повторяющиеся данные
MrShinПанургПоправь условия и будет не больше двух
Вопрос в том, чтобы не количество строк ограничить, а данных в определенном столбце должно быть не более определенного числа. Честно говоря, не знаю, как можно прописать условие с переменной в чек констрейне. Есть идеи?Можно попробовать так.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Повторяющиеся данные / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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