Вызов хранимой процедуры на классической странице ASP - PullRequest
2 голосов
/ 10 июня 2009

Я весь день пытался вызвать хранимую процедуру с классической страницы ASP. У меня есть несколько основных вопросов по нуби.

Во-первых, это лучший способ добавить параметр в мою команду:

cmd.Parameters.Append cmd.CreateParameter("@SubmissionDate", adDBTimeStamp, adParamInput, , txtDate)

Во-вторых, является ли adDbTimeStamp подходящим типом для использования при отображении параметра smalldatetime в моей хранимой процедуре?

В-третьих, как передать нулевую дату в хранимую процедуру datetime?

Кроме того, какие редакторы популярны для классической разработки ASP. Мне сказали использовать Dreamweaver (купил CS4), но у меня действительно есть некоторые проблемы с производительностью, и я опустился до мощного Блокнота.

Спасибо!

Ответы [ 3 ]

2 голосов
/ 10 июня 2009

3

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

CREATE PROCEDURE Demo
    @Test datetime = NULL
AS
BEGIN
    -- BLAH
END
1 голос
/ 10 июня 2009

Хм, я не пользовался классическим ASP уже несколько лет, однако могу сказать, что для ответов на вопрос Google вам нужно «ADO» (но не ADO.Net)

Следующая ссылка содержит пример выполнения хранимой процедуры в VBScript с помощью ADO. Я буду экспериментировать с подобными примерами, пока не найдете что-то, что работает.

http://www.15seconds.com/issue/010718.htm

Также моим текстовым редактором на данный момент является «Блокнот ++», я не уверен, как он справляется с классическим asp, но его, вероятно, стоит попробовать, и он будет лучше для вас, чем Блокнот.

0 голосов
/ 10 июня 2009

adDBTimeStamp - это правильный тип данных для передачи даты и времени, а использование Append / CreateParameter - лучший способ создать параметр.

Но будет ли txtDate строкой? Вы действительно должны сначала преобразовать это в тип Date. Это не так просто, как кажется, если вы не уверены в том, какой формат даты используется при вводе данных в форму.

Чтобы передать значение null, просто замените параметр значением выражения Null: -

cmd.Parameters.Append cmd.CreateParameter("@SubmissionDate", adDBTimeStamp, adParamInput, , null)

Я использую VS2005 / 2008 для редактирования большинства ASP, но мне нравится, когда Notepad ++ висит рядом, когда я хочу быстро что-то настроить.

...