Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 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 не происходит заполнения

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам