Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Помогите в Access'e


Рекомендуемые сообщения

при попытке добавить школьника к базе (база - школа), пишит number of query values and destination fields are not the same, как это исправить??? помогиьте пожалуйсто!

Ссылка на комментарий
Поделиться на другие сайты

k4t1k

Тебя элементарно спрашивают - а где твой путь к этим самым?

Значит, ЕГО, то бишь это ПОЛЕ, надо СОЗДАТЬ!

Запросы пропадут.

Так что fields тебе помогут! :bleh:

Ссылка на комментарий
Поделиться на другие сайты

GUST

Ты сам-то понял что написал?

k4t1k

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

Возможно (но не факт) проблема в том, что ты вставляешь запись в таблицу с автоинкрементным полем, не передавая значения этого поля. Данное действие абсолютно нормально, но если при этом в запросе не передавать имена полей - выскочит подобная ошибка.

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

INSERT INTO schools VALUES ('qwe', 'wer', 'qwerr')";

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

INSERT INTO schools (field1, field2, field3) VALUES ('qwe', 'wer', 'qwerr')";

Ссылка на комментарий
Поделиться на другие сайты

INSERT INTO SKOLNIEKS

VALUES (Forms!F_ADD_SKOLNIEKS!txt_S_KEY, 12, Forms!F_ADD_SKOLNIEKS!txt_VARDS, Forms!F_ADD_SKOLNIEKS!txt_UZVARDS, Forms!F_ADD_SKOLNIEKS!txt_frm_DZIM, Forms!F_ADD_SKOLNIEKS!txt_KODS, Forms!F_ADD_SKOLNIEKS!cmb_TAUTIBA, Forms!F_ADD_SKOLNIEKS!cmb_PILSONIBA, Forms!txt_DZIV_ADRESE, Forms!F_ADD_SKOLNIEKS!txt_TELEFONS);

Field name:

S_KEY

Skolnieka_Vards_Uzvards

Dzimums

Skolnieka_personas_kods

Tautiba

Pilsoniba

Klase

Klases_numurs

Klases_burts

Pasniedzeja_Vards_Uzvards

Skola

4to u menja tut nepraviljno??? ja uzhe probovala stoka vsego, ne polu4ajetsja

Ссылка на комментарий
Поделиться на другие сайты

k4t1k

INSERT INTO SKOLNIEKS....................

- мне так усё понравилось, всё так красиво..., что дальше цитировать не буду. Тем более, не программист!
Shurr

Ты сам-то понял что написал?

На английском последний раз Офис пользовал до 2000 года, мог и подзабыть... ;)

number of query values and destination fields are not the same,
- перевёл как

Запрос оценки и расположение ПОЛЕЙ а нот зе сам (are not the same)

Сейчас всё на русском выскакивает, поэтому могу и не попасть в струю... ;)

Обычно СОЗДАЮ дополнительное ПОЛЕ, данные или ещё что просят, согласовываю СХЕМУ ДАННЫХ (связи, подчинение и пр.), проверяю в работе и продолжаю...

Увы, если не так...

k4t1k - похоже, ты уже ПРОГРАММУ вскрыла и шпаришь?

Я так тебя понял: ты создаешь НОВЫЕ поля?

Очень похоже на БД ЗАПИСНАЯ КНИЖКА. :bye1:

Ссылка на комментарий
Поделиться на другие сайты

k4t1k

Смотри, если при вставке не указаны имена полей - значения вставляются по порядку. Давай попробуем сопоставить поля таблицы и вставляемые тобой значения. Присваивание будет происходить таким образом:

S_KEY = Forms!F_ADD_SKOLNIEKS!txt_S_KEY,

Skolnieka_Vards_Uzvards = 12,

Dzimums = Forms!F_ADD_SKOLNIEKS!txt_VARDS,

Skolnieka_personas_kods = Forms!F_ADD_SKOLNIEKS!txt_UZVARDS,

Tautiba = Forms!F_ADD_SKOLNIEKS!txt_frm_DZIM,

Pilsoniba = Forms!F_ADD_SKOLNIEKS!txt_KODS,

Klase = Forms!F_ADD_SKOLNIEKS!cmb_TAUTIBA,

Klases_numurs = Forms!F_ADD_SKOLNIEKS!cmb_PILSONIBA,

Klases_burts = Forms!txt_DZIV_ADRESE,

Pasniedzeja_Vards_Uzvards = Forms!F_ADD_SKOLNIEKS!txt_TELEFONS

Skola = ?

Как видишь, последнему полю значения не нашлось. Это произошло потому, что на одиннацать полей ты передаешь десять значений. Поэтому и выскакивает ошибка, что количество переданных значений не соответствует количеству полей.

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

Попробуй написать запрос, в котором принудительно укажи в какое поле какое значение вставлять, типа такого:

INSERT INTO SKOLNIEKS (S_KEY, Dzimums, Skolnieka_personas_kods, Tautiba) VALUES (Forms!F_ADD_SKOLNIEKS!txt_S_KEY, Forms!F_ADD_SKOLNIEKS!txt_frm_DZIM, Forms!F_ADD_SKOLNIEKS!txt_KODS, Forms!F_ADD_SKOLNIEKS!cmb_TAUTIBA);

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

Ссылка на комментарий
Поделиться на другие сайты

А как исправить ошибку, если при вводе информации он пишит, что не может ввести одну запись (я думаю, что это класс ученика) из за key violations.

Ссылка на комментарий
Поделиться на другие сайты

Какое ключевое поле в таблице? Оно автоинкрементное?

Либо ты вставляешь запись со значением ключевого поля, которое уже есть в таблице, либо поле не автоинкрементное, а ты не указываешь его значение.

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...