Страница: 1 |
Страница: 1 |
Вопрос: запрос
Добавлено: 14.07.07 21:21
Автор вопроса: Илья
Нужно сделать запрос на добавление в конкретное поле конкретную строку
дайте синтаксис, пожалуйста
Ответы
Всего ответов: 14
Номер ответа: 1
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #1
Добавлено: 14.07.07 22:15
уточняю
например запрос
INSERT INTO Таблица (Поле1)
values (....)
WHERE Поле2 and Поле3 is not null
проблема в том, что заранее неизвестно, какое число будет введено в Поле1, т.е. как написать values чтобы выводилось окно для ввода числа
Номер ответа: 2
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #2
Добавлено: 15.07.07 01:09
INSERT INTO Таблица (Поле1)
values ([myparam])
WHERE (Поле2 and Поле3) is not null
Номер ответа: 3
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #3
Добавлено: 15.07.07 11:00
Ругается, пишет что нехватает ; после инструкции SQL, если поставить, то говорит что обнаружены символы за пределами инструкции. если поставить после null, то тоже говорит, что нехватает ;
Номер ответа: 4
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #4
Добавлено: 15.07.07 15:00
сорри, заклинило.
у INSERT INTO два синтаксиса:
1. INSERT INTO ... SELECT ...
2. INSERT INTO ... VALUES ...
Во втором случае добавляется только одна строка записи и какие-либо условия бессмысленны.
INSERT INTO Таблица (Поле1) values ([myparam]) ;
Номер ответа: 5
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #5
Добавлено: 15.07.07 19:33
Я могу ошибаться, но..
INSERT INTO Таблица (Поле1) values ([myparam]) ;
можно без него...
Номер ответа: 6
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #6
Добавлено: 15.07.07 21:47
Я наверное не точно объяснил. Смысл следующий: нужен запрос на добавление, при этом есть 2 условия
1.поскольку заранее не известно какое число будет добавляться, необходимо чтобы запрос выдавал что-то вроде MsgBox, куда можно было бы ввести число
2. необходимо чтобы это число вводилось только в те строки поля, которые заполнены в другом поле.
Поэтому я и думал, что синтаксис
INSERT INTO Таблица (Поле1)
values ([myparam])
WHERE (Поле2 and Поле3) is not null
пойдет, но не тут то было, поскольку будет добавлено только в одно поле
Номер ответа: 7
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #7
Добавлено: 16.07.07 00:23
Опять путаешь тип запроса.
INSERT INTO добавляет в таблицу новые записи (строки), UPDATE - изменяет старые.
Номер ответа: 8
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #8
Добавлено: 16.07.07 07:58
не, не путаю. в том то и дело, что мне надо добавить в таблицу новые записи, но только в те строки, которые заняты в ДРУГИХ полях, чтобы потом избежать переполнения, т.е. деления на "0"
поэтому выбор - INSERT INTO
Номер ответа: 9
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #9
Добавлено: 16.07.07 08:04
т.е. например, есть Поле1, оно пустое. есть поля Поле2 и Поле3, они заполнены в некоторых строках. Смысл в том чтобы заполнить только те строки Поле1, которые зваполненыв Поле2 и Поле3.
Т.е. что типа
INSERT INTO Таблица1.Поле1
Select (не знаю что)
Where Поле2 and Поле3 is not null
Номер ответа: 10
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #10
Добавлено: 17.07.07 00:41
Я понял тебя, поверь. Путаешь тип запроса.
Номер ответа: 11
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #11
Добавлено: 17.07.07 11:38
Дык а как тогда написать, исходя из требований?
Номер ответа: 12
Автор ответа:
EUGY
Вопросов: 0
Ответов: 454
Профиль | | #12
Добавлено: 17.07.07 17:29
UPDATE Таблица1 SET Поле1 = [myparam] WHERE (Поле2 and Поле3) is not null;
Номер ответа: 13
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #13
Добавлено: 17.07.07 21:34
Большое спасибо за помощь.
Номер ответа: 14
Автор ответа:
Илья
Вопросов: 5
Ответов: 31
Профиль | | #14
Добавлено: 18.07.07 20:24
Столкнулся с таким:
запрос работает
UPDATE Таблица1 SET Поле1 = [myparam] WHERE (Поле2 and Поле3) is not null;
однако заполнение поле1 происходит только в одной строке. соответствующей строке Поле2, в строке поле2 не происходит заполнения