Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
SHzh
0 / 0 / 0
Регистрация: 01.04.2009
Сообщений: 44
1

Проблема с Recordset:Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another. /Project/ASP Page1.asp, line

01.04.2009, 07:42. Просмотров 1521. Ответов 12
Метки нет (Все метки)

Подскажите, почему при открытии Recordset выдается ошибка
ADODB.Recordset (0x800A0BB9)
Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.
/Project/ASP Page1.asp, line 10

Visual Basic
1
2
3
4
5
6
7
Dim rs
Dim strSQL, sql
Set rs = Server.CreateObject('ADODB.Recordset')
Application('Connection1_ConnectionString') = open
Application('rs_ActiveConnection') = cn
sql = 'Select * From Courses'
rs.Open sql,rs_ActiveConnection,adOpenDynamic,adLockOptimistic//Ошибка
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.04.2009, 07:42
Ответы с готовыми решениями:

Ошибка: "Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another"
Подскажите!!! PLEASE! Я пишу: dim conDB, rs connStr="Provider=SQLOLEDB.1;Persist Security...

Ошибка Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another
Private Sub fStatistic(ThisPage As string) Dim CNN as OleDb.OleDbConnection Dim sCNN as...

ADODB.Recordset (0x800A0CC1) Item cannot be found in the collection corresponding to the requested name or ordinal. /myportal/index2.asp, line 43
Почему простая команда - 'select * from visits' выдаёт: ADODB.Recordset (0x800A0CC1) Item cannot...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
pl
51 / 17 / 6
Регистрация: 18.05.2007
Сообщений: 1,322
01.04.2009, 10:31 2
Где определен rs_ActiveConnection, вроде там должно стоять cn?
Ты используешь константы (adOpenDynamic, ...) вместо их значений, проверь определены ли они у тебя.
0
SHzh
0 / 0 / 0
Регистрация: 01.04.2009
Сообщений: 44
02.04.2009, 04:43  [ТС] 3
Я Подсоединил БД с помощью InterDev. Получил стандартное подсоединение
Connection1 описанное в global.asa
Действительно, cn я не использовал. Скорей всего
Application('rs_ActiveConnection') = Connection1
переписал так:
rs.Open sql,Connection1,3
Выдает синтаксическую ошибку ;-((
0
Rider
02.04.2009, 06:05 4
уважаемый какая то чепуха у вас

Код
'
' global.asa
' ---------------
....
application('conn') = <connection>
application('rs') = <recordset>
....

'
' mypage.asp
' ---------------
.......
conn = application('conn')
rs = application('rs')
ssql = <sql srting>
rs.open ssql, conn, 3, 3
........
так все будет работать.
кроме того много раз писалось и говорилось что хранение объектов в application это _очень_ плохой тон. особенно запихивать такие объекты как adodb.connection и adodb.recordset, поскольку первый разрешает _только одно_ соединение в единицу времени, а второй работает через первый.
также плохим тоном является запихивание этих объектов в session.
SHzh
0 / 0 / 0
Регистрация: 01.04.2009
Сообщений: 44
02.04.2009, 06:39  [ТС] 5
Пробовал делать соединение без Application, примерно так:
Visual Basic
1
2
3
4
5
6
7
8
<code>
dim rs,sql,conn
set conn = server.createobject('adodb.connection')
conn.open = 'DSN=Page; UID=sh;PWD=;database=Anketa' //Ошибка
Set rs = Server.CreateObject ('ADODB.Recordset')
sql = 'Select * from Courses'
rs.Open sql,conn,3
</code>
В этом случае пишет что такого DSN не видит, хотя в списке ODBC он присутствует. По Page через Application получалось подсоединяться.
0
Rider
02.04.2009, 06:44 6
в списке dsn: user dsn или system dsn?
SHzh
0 / 0 / 0
Регистрация: 01.04.2009
Сообщений: 44
02.04.2009, 06:47  [ТС] 7
User DSN Page: создавал сам, подсоединяет SQL Server
0
Rider
02.04.2009, 06:50 8
потому и ошибка, что ваш user dsn не доступно вебсерверу, ему доступен system dsn
SHzh
0 / 0 / 0
Регистрация: 01.04.2009
Сообщений: 44
02.04.2009, 07:07  [ТС] 9
Как узнать системный логин? Это случайно не имя владельца компьютера?
Если так, то я на чужой машине, видимо потребуется и пароль ;-((
0
Rider
02.04.2009, 07:10 10
не совсем понятен вопрос.
SHzh
0 / 0 / 0
Регистрация: 01.04.2009
Сообщений: 44
02.04.2009, 07:25  [ТС] 11
Sorry за глупый вопрос.
Просто мне не ясно вот что:
сервер выдает ошибку следующего содержания

[Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user 'NT AUTHORITYANONYMOUS LOGON'.

conn.open= 'DSN=LocalServer;UID=sh;PWD=;database=Anketa' //Ошибка
Причем в ODBC при проверке connection проходит успешно
0
Rider
02.04.2009, 07:30 12
а зачем вы к сиквелу подключаетесь через odbc? это несовсем разумно.
делайте так:
Visual Basic
1
2
Set myConn = Server.CreateObject('ADODB.Connection')
myConn.Open 'DRIVER={SQL Server};SERVER=<ip address or netbios name>;UID=<sql username>;PWD=<sql pass>;DATABASE=<dbname>;'
SHzh
0 / 0 / 0
Регистрация: 01.04.2009
Сообщений: 44
02.04.2009, 07:53  [ТС] 13
Наверно со мной сильно тяжелый случай :-)
но сервер не хочет определять мой UID=sh, пишет LoGIN Failed

conn.Open 'DRIVER={SQL Server};SERVER=ID-BDEV;UID=sh;PWD=ATABASE=Anketa;'

P.S. Спасибо за помощь
0
02.04.2009, 07:53
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.