3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
|
||||||
1 | ||||||
Как передать параметры в процедуру18.06.2012, 20:13. Показов 2040. Ответов 8
Метки нет (Все метки)
БД oracle имеется вот такая процедура
0
|
18.06.2012, 20:13 | |
Ответы с готовыми решениями:
8
Как передать параметры в BackgroundWorker Как передать параметры неуправляемому коду Как передать Hashtable через процедуру Как передать параметр в хранимую процедуру с типом nvarchar |
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,245
|
||||||
18.06.2012, 21:27 | 2 | |||||
по-моему там обычным select'om, типа такого:
1
|
3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
|
||||||
18.06.2012, 22:04 [ТС] | 3 | |||||
хм, спасибо, попробую, я правда уже додумался вот до чего
0
|
1245 / 1055 / 293
Регистрация: 07.03.2012
Сообщений: 3,245
|
|
18.06.2012, 22:18 | 4 |
там у Datetime есть метод ToShortDateString(). Может им воспользоваться?
0
|
3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
|
|
18.06.2012, 22:38 [ТС] | 5 |
нет не подходит
Добавлено через 4 минуты Все, нашел решение, оказывается в процедуру надо передавать дату так to_date('1998/05/31:12:00:00AM', 'yyyy/mm/dd:hh:mi:ssam')
0
|
19.06.2012, 07:38 | 6 | |||||
Параметры надо передавать в виде параметров, а не с помощью конкатенации строк.
Например вот, для даты:
0
|
3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
|
|
19.06.2012, 12:12 [ТС] | 7 |
А в чем смысл, если результат один и тот же, а кода больше ?
Добавлено через 1 минуту Тогда уж надо и процедуру получается переписывать )
0
|
19.06.2012, 12:31 | 8 |
Смысл в меньшем количестве проблем.
Например что если в переменной checkfuel, случайно, окажется строка типа такой: Код
',null,null,null,null); execute immediate 'drop table fuel'; addchecks(null,' В случае с параметрами, почти никаких последствий не будет, разве что процедура ничего не сделает. Еще одно преимущество в том, что сервер Oracle не будет каждый делать Hard parse строки. Так как она будет всегда одинаковая, а только лишь будут меняться значения параметров. После первого вызова он положит её в кэш и потом уже брать оттуда.
1
|
3 / 3 / 2
Регистрация: 27.09.2009
Сообщений: 200
|
|
19.06.2012, 14:11 [ТС] | 9 |
Хм, спасибо, но так то я проверяю все переменные на соответствие прежде чем передать их в процедуру, так что думаю ничего страшного произойти не должно, а вот насчет быстродействия вы пожалуй правы.
Кстати вот еще один вопрос. Не по данной теме но все таки. Как сделать так чтобы в ячейке датагридвью дата отображалась полностью, то бишь с секундами, а то почему то дату показывает нормально dd.mm.yyyy а время выдает в формате hh.mm,почему секунды не показывает ?
0
|
19.06.2012, 14:11 | |
19.06.2012, 14:11 | |
Помогаю со студенческими работами здесь
9
Как передать в процедуру Oracle параметр типа table%rowtype из ADO.NET? Передать параметры программе Не получается передать параметры в поток Передать параметры во вложенный запрос Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |