powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Ошибка синтаксиса. ASP+SQL
25 сообщений из 61, страница 2 из 3
Ошибка синтаксиса. ASP+SQL
    #32049776
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С кол. понятно (50), в данноом случае не имеетт значение.

А вот про ошибку можно по подробнее, что то я не понял откуда CommandStream взялось
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049777
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот в том то и дело что удаление записи проходит! А если процедура(другая) делает только выборку из таблиц, но тоже создается приэтом параметр то ошибки НЕТ!
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049779
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот процедура которая работает

<%
dim connect, rs, cmd
dim sid
dim spattern

spattern=Request("pattern")(1)
sid=" "


set connect=Server.CreateObject("ADODB.Connection")
connect.ConnectionTimeout=15
connect.CommandTimeout=10
connect.Open "Provider=SQLOLEDB;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=Test;Data Source=SQL\TEST;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;Tag with column collation when possible=False"


set cmd=Server.CreateObject("ADODB.Command")
cmd.CommandType=adCmdStoredProc
cmd.CommandText="findcustomers"
cmd.ActiveConnection=connect

cmd.Parameters.Append cmd.CreateParameter("pattern",adVarWChar,adParamInput,100,spattern)

set rs=cmd.Execute

%>
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049780
Фотография VVG_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Jimmy: По поводу дыры. Здесь есть пример от Деда Маздая & Jimmers.
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049783
Makc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Про CommandStream это я немножко не из той оперы...
Ну это кады XML из базы забираешь и пишешь прямо в Response...


А ошибка у тебя за того что хп не возвращает записей, а ты пытаетесь привязать к ней рекордсет...
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049785
av_ev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Set cn = Server.CreateObject("ADODB.Connection")
cn.Provider = "sqloledb"

Set cmd = Server.CreateObject("ADODB.Command")
cmd.CommandType = adCmdStoredProc

strcon = "Data Provider=SQLOLEDB;"
strcon = strcon & "SERVER=SERVER;"
strcon = strcon & "UID=Sa;"
strcon = strcon & "PWD=;"
strcon = strcon & "Database=new_av;"
cn.open strcon

Set cmd.ActiveConnection = cn

cmd.CommandText = ""
cmd.CommandText = "del_opl"
cmd("@prm") = request("prm")
cmd.execute
Response.Redirect Session("link")

работает на всех версиях SQL и ADO
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049786
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Во первых используется процедура, а не CommadText.
Во вторых конектится к базе ииспользуя индификатор администратора....???????
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049787
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Klopiki

Тебе уже несколько раз повторили, но, видимо, не впрок.
Ладно, еще раз жирными буквами.

Существует 2 синтатксиса Command.Execute:

1. Set rs = Command.Execute [strSQLcommand]
используется в том случае, если команда возвращает набор данных, и необходимо этот набор поместить в объект Recordset. В случае, если команда не возвращает результирующего набора, происходит ошибка, т.к. интерпретатор VB не может создать объект.

2. Command.Execute [strSQLcommand]
используется для выполнения команд не возвращающих данных (update, delete) или если не нужна обработка возвращаемых данных


ЗЫ Там есть еще несколько параметров, но я их не помню.
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049789
av_ev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда
cmd.CommandType = adCmdStoredProc
тогда
cmd.CommandText - это и есть имя процедуры

а логин Sa - просто для смеха
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049790
Makc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Klopiki:
Так у тебя
cmd.execute
заработало или нет?

Предлагаю закрыть тему, а то уж очень много постов на несложный на простой вопрос
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049791
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я это уже использовал причем еще утром сразу.
ДАЕТ ТУ ЖЕ ОШИБКУ!!!
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049846
Незнайка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не горюй!
если пишет про синтаксис - на Execute то что-то с парамерами передачи
1. Поскольку у тебя ID -строковой может быть разница между null и "".
2. VarChar и nVarchar не очень дружат, а ID у тебя - это же обычные символы. Может передавай в хп VarChar , а там делай преобразования до nVarchar ?
3. Если из БД лезет ошибка
Попробуй аккуратно написать на VB по аналогии JS
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
try
 {
var connect = Server.CreateObject( "ADODB.Connection" );
   connect.ConnectionTimeout =  15 ;
   connect.CommandTimeout =   10 ;
...........
   
   var cmd = Server.CreateObject( "ADODB.Command" );
   cmd.CommandText =  "del..." ;
   cmd.CommandType = adCmdStoredProc;
   cmd.ActiveConnection = connect;
    
   var id = cmd.CreateParameter(
      "id" , adInteger, adVarWChar,  50 , Request( "ID" )( 1 ));
 
    
   cmd.Parameters.Append(id);
cmd.Execute();

   connect.Close();
  }
  catch (ex)
  {
    if(ex instanceof Error)
    {
      if(connect.Errors.Count== 0 )
        throw ex;
      var errDescription= "", errNumber=0 ,serrMessage=" ";
      for(i=0 ;i<connect.Errors.Count;i++)
      {
        errDescription=connect.Errors(i).description;
        errNumber=connect.Errors(i).number;
        serrMessage += ("[ "+errNumber+" ] " + errDescription + " <br> ");
      }
      Response.Redirect(" error.asp?ERROR=Yourpage.asp "+" &ERRMSG="+serrMessage);
    }
    else
      throw ex;
  }
  Response.Redirect(.....)
}


Создай страничку error.asp

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<%@ LANGUAGE =  "JScript"  %>
<HTML>
<head>
<meta http-equiv= "Content-Language"  content= "en-us" >
<meta http-equiv= "Content-Type"  content= "text/html; charset=windows-1251 ">
<title>Ошибка в приложении</title>
</head>
<body>
<h2>Ошибка в приложении</h2>

<p>[<%=Request( "ERROR" )%>]<br><%=Request( "ERRMSG" )%></p>
</html>

Это поможет отловить текст ошибки, если проблема в БД. может поймешь, в чем дело
Извини, я синтаксис VB не знаю.
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049898
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПОвторяю проблему, а тто смысл потеерялся.

На JS все работало, без проблем. Переписал счас на VB поменялась при этом строчка конекта с ODBC на SQL Provider.

Работать стало гораздо быстрее, но стала появлятся эта дурная ошибка.
Error Type:
(0x80040E14)

Причем она появляется если происходит изменение в таблиц данных (вставка, удаление, редактирование...). Если же идет только выборка то нет ее.

смена c set rs=cmd.Execute на просто cmd.Execute не помогло.
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049901
Makc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MSDN :

INFO: Underlying OLE and OLEDB Provider Errors Exposed via ADO

Описание ошибки:
0x80040E14 -2147217900 The command contained one or more errors.

У тебя ADO какой стоит?
У меня 2.7 и прога вываливалась с ошибкой при попытке исполнить в хп с параметром, тип или размер которого отличается от определенного в хп
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049903
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На серваке счас стоит ADO 2.6.
Надо ли мне поставить SP2 на SQL или проапдейтить еще дальше на ADO 2.7?
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049905
Makc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для начала попробуй:

cmd.Parameters.Append cmd.CreateParameter("id",adNVarWChar,adParamInput,50,cstr(sid))
("Result",adNVarWChar,adParamInput,10,cstr(sid))


и хп:
CREATE procedure dbo.deletecustomers
@id nvarchar(50);
@Result nvarchar(10)='Ok' output;
as
delete
from customers
where NameID=@id
if @@error<>0 goto Error
return
Error:
Set @Result='Error'
return

После выполнения хп анализируй параметр Result...
Успехов!!!
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049907
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробую.
А может быть такой вариант, что из-за несовпадений версий ADO происходит эта ошибка.

На серваке 2.6
на локаках где я смотрел 2.1 2.5 2.7 ?
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049909
Makc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя asp на стороне сервака же выполняется...
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049912
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А где его посмотреть этот result
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049916
Makc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cmd.execute
Result= cmd.Parameters("Result")
%>
<p class="zaglavie"><% response Result %> </p>
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049922
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй строчку

set rs=cmd.Execute

заменить на

cmd.Execute , , adExecuteNoRecords
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049927
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, в скрипте имеется ошибка. Не в ней ли дело?

cmd.Parameters.Append cmd.CreateParameter("id",adVarWChar,adParamInput,100,sid)

Параметр должен быть не "Id", а "@Id"
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049931
Klopiki
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет не помогло......таже ошибка. И новая проблема.

ODBC стало что то цеплять
[Microsoft][ODBC SQL Server Driver][SQL Server]Could not find stored procedure 'UpackTest Web Page'.

Хотя ка бы такой процедуры нет и никогда и небыло. Я пытался создать web-страницу непосредственно через enterprise и назвал ее так в чем дело не понятно
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049934
Фотография ziktuw
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В одном из триггеров смотри её вызов
...
Рейтинг: 0 / 0
Ошибка синтаксиса. ASP+SQL
    #32049938
Фотография akuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первым делом запусти процедуру в QA, будет ли работать.
Если работает, попробуй сделать так.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
set cmd=Server.CreateObject( "ADODB.Command" ) 
cmd.ActiveConnection=connect 
cmd.CommandType=adCmdStoredProc 
cmd.CommandText= "deletecustomers"  

cmd.Parameters.Refresh
cmd.Parameters( "@id" )=sid
cmd.Execute

Заработало?
...
Рейтинг: 0 / 0
25 сообщений из 61, страница 2 из 3
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Ошибка синтаксиса. ASP+SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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