Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / ASP + Stored procedure / 16 сообщений из 16, страница 1 из 1
15.07.2002, 14:21:30
    #32036721
MIH
MIH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
ASP + Stored procedure
Ктонибудь сталкивался с такой проблемой?
При вызове из ASP процедура возвращает нулевой результат в QueryAnalyzer все ок

Alter PROCEDURE sp_Test @Id char(9) AS

DECLARE @Date Datetime
SET @Date = CONVERT(Char(10),GETDATE(),107)

SELECT * FROM TBL
WHERE ID = @Id AND Date = @Date

-----------
ASP

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Session("ConnectionString")
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.PageSize = 10

Rs.Open "sp_Test "&"'"&ID&"',Conn ,3 ,1
...
Рейтинг: 0 / 0
15.07.2002, 14:34:02
    #32036725
ziktuw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
А чего-то такое вот эдакое:

DECLARE @Date Datetime
SET @Date = CONVERT(Char(10),GETDATE(),107)

убери эту явную дрись, а потом уже будем баги искать, если они останутся
...
Рейтинг: 0 / 0
15.07.2002, 14:41:16
    #32036727
ziktuw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Вот в этой строчке не видно закрывапющейся кавычки перед ,Conn:

Rs.Open "sp_Test "&"'"&ID&"',Conn ,3 ,1
...
Рейтинг: 0 / 0
15.07.2002, 15:42:36
    #32036736
MIH
MIH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Извините за ошибки писал из головы. Уточняю если убрать объявление переменной в процедуре все работает коректно если оставить выдается ошибка

"ADODB.Recordset error '800a0bb9'
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another."


Alter PROCEDURE sp_Test @Id char(9) AS

DECLARE @Dt Char(2)
SET @Dt = 'AA'

SELECT * FROM TBL
WHERE ID = @Id AND Dt = @Dt

-----------
ASP

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Session("ConnectionString")
Set Rs = Server.CreateObject("ADODB.Recordset")
Rs.PageSize = 10

Rs.Open "sp_Test "&"'"&ID&"'",Conn ,3 ,1
...
Рейтинг: 0 / 0
15.07.2002, 15:52:33
    #32036739
VVG_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Можно попробовать SET NOCOUNT ON в начало процедуры вставить.
...
Рейтинг: 0 / 0
15.07.2002, 16:13:59
    #32036749
ziktuw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
> "ADODB.Recordset error '800a0bb9'
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another."


А это, вероятно, из-за неправильного значения ID
В примере не видно, какое значение получает ID
...
Рейтинг: 0 / 0
15.07.2002, 16:20:28
    #32036750
VVG_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Такая ошибка обычно вылезает, если в рекордсете обратиться к несуществующему столбцу. А это возможно, если в процедуре несколько статементов, каждый из которых в свой рекордсет норовит забраться. Тут либо через NextRecordset искать открытый, либо SET NOCOUNT.
...
Рейтинг: 0 / 0
15.07.2002, 16:38:32
    #32036754
MIH
MIH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
SET NOCOUNT ON Не помогает буду разбиратся с Recordset-ом мрак какойто!!!! а ID тут точно не причем
...
Рейтинг: 0 / 0
15.07.2002, 16:44:54
    #32036755
VVG_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Попробуй его так открывать

Код: plaintext
1.
2.
3.
4.
5.
 set cmd = Server.CreateObject( "ADODB.Command" )
 cmd.CommandText =  "sp_test" 
 cmd.CommandType =  4 
 cmd.Parameters.Append cmd.CreateParameter( "@ID" , 3 , 1 , 4 ,CLng(ID))
 cmd.ActiveConnection = conn
 set rs=cmd.execute


P.S. Форум кстати MSSQL называется. :)
...
Рейтинг: 0 / 0
15.07.2002, 19:03:25
    #32036792
ziktuw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
В любом случае, сперва лучше в профайлер глянуть, что на сервер идет, а потом уже обмозговывать увиденное
...
Рейтинг: 0 / 0
15.07.2002, 21:41:55
    #32036818
MIH
MIH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Вроде разобрался Всем спасибо!!!
...
Рейтинг: 0 / 0
16.07.2002, 09:20:38
    #32036839
Delta
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Коль уже пошел такой конкретный VB-й оффтоп, спрошу и я: так в чем было дело-то?
...
Рейтинг: 0 / 0
16.07.2002, 12:25:16
    #32036890
Andrew
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Rs.Open "exec sp_Test ...
...
Рейтинг: 0 / 0
16.07.2002, 23:41:38
    #32037056
MIH
MIH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Да Rs.Open "exec sp_Test ... все работает ок но при обращение к Recordset PageSize возвращает -1
...
Рейтинг: 0 / 0
17.07.2002, 11:07:39
    #32037110
ziktuw
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
Наверно, курсор серверный
...
Рейтинг: 0 / 0
18.07.2002, 11:03:14
    #32037380
ASP
ASP
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ASP + Stored procedure
?
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / ASP + Stored procedure / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]