Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Вниз

in Visual Basic 


Vladimir ;)   (2002-03-26 14:48) [0]

Кто мне может конкретно объяснить что значит начертание типа:

Microsoft OLE DB Provider for ODBC Drivers error "80004005"

[Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable query.

И как с этим бороться ???



Nikolay M.   (2002-03-26 14:53) [1]

Хоть бы написал, что делаешь, текст выполняемого запроса, если есть и вообще...
Но по присутствию слов "updateable query" рискну высказать мнение, что пытаешься редактировать результат, возвращаемый read only запросом.



Vladimir ;)   (2002-03-26 14:56) [2]

Дело такое:
<!--#include file="dbopen.asp"-->
<%
Dim user, email, subject, content, sSQL, pid
Dim tp
tp = Request.QueryString("type")
if tp = "newmsg" then
Call NewMsg()
else
if tp = "newreply" then
Call NewReply()
end if
end if

cn.Close

Set cn = Nothing
Sub NewMsg()
user = Request.Form("user")
email = Request.Form("email")
subject = Left(Request.Form("subject"),40)
content = Request.Form("content")
if (user="" Or email = "" Or subject = "" Or content = "") then
Response.Write "Одно из полей пустое !"
Response.End
end if
Response.Cookies("forum")("user") = Replace(Replace(Replace(Replace(user,"&","&"),"<","<"),">",">"),CHR(34),""")
Response.Cookies("forum")("email") = Replace(Replace(Replace(Replace(email,"&","&"),"<","<"),">",">"),CHR(34),""")
Response.Cookies("forum").Expires=dateadd("yyyy",1,Date)
user = Replace(Replace(Replace(Replace(Replace(user,"&","&"),"<","<"),">",">"),""",""""),CHR(34),""")
email = Replace(Replace(Replace(Replace(Replace(email,"&","&"),"<","<"),">",">"),""",""""),CHR(34),""")
content = Replace(Replace(Replace(Replace(Replace(Replace(content,"&","&"),"<","<"),">",">"),""",""""),CHR(13) & CHR(10),"<br>",1),CHR(34),""")
subject = Replace(Replace(Replace(Replace(Replace(subject,"&","&"),"<","<"),">",">"),""",""""),CHR(34),""")
If Len(content) > 4096 Then content = Left(content, 4096)

If type_db = "Access" Then
sSQL = "INSERT INTO messages (nuser, email, subject, content, msgdate) VALUES ("" & _
user & "","" & email & "","" & subject & "","" & _
content & "","" & Now() & "")"
End If

If type_db = "SQLServer" Then
sSQL = "INSERT INTO messages (nuser, email, subject, content) VALUES ("" & _
user & "","" & email & "","" & subject & "","" & _
content & "")"
End If

cn.Execute(sSQL)

%>
<p><center>
<h3><font color="#ff4500">Сообщение успешно добавлено !</h3>

<a href="default.asp" title="[К сообщениям]"
style="color: #556b2f; text-decoration: none; background: #fffafa">
К сообщениям
</a>
</center>
<%
End Sub

Sub NewReply()
pid = Request.QueryString("pid")
user = Request.Form("user")
email = Request.Form("email")
subject = Left(Request.Form("subject"),40)
content = Request.Form("content")

if (user="" Or email = "" Or subject = "" Or content = "" Or pid = "") then
Response.Write "Одно из полей пустое !"
Response.End
end if
Response.Cookies("forum")("user") = Replace(Replace(Replace(Replace(user,"&","&"),"<","<"),">",">"),CHR(34),""")
Response.Cookies("forum")("email") = Replace(Replace(Replace(Replace(email,"&","&"),"<","<"),">",">"),CHR(34),""")
Response.Cookies("forum").Expires=dateadd("yyyy",1,Date)
user = Replace(Replace(Replace(Replace(Replace(user,"&","&"),"<","<"),">",">"),""",""""),CHR(34),""")
email = Replace(Replace(Replace(Replace(Replace(email,"&","&"),"<","<"),">",">"),""",""""),CHR(34),""")
content = Replace(Replace(Replace(Replace(Replace(Replace(content,"&","&"),"<","<"),">",">"),""",""""),CHR(13) & CHR(10),"<br>",1),CHR(34),""")
subject = Replace(Replace(Replace(Replace(Replace(subject,"&","&"),"<","<"),">",">"),""",""""),CHR(34),""")
If Len(content) > 4096 Then content = Left(content, 4096)
If type_db = "Access" Then
sSQL = "INSERT INTO replies (nuser, email, subject, content, msgdate, parent_id) VALUES ("" & _
user & "","" & email & "","" & subject & "","" & _
content & "","" & Now() & ""," & _
pid & ")"
End If
If type_db = "SQLServer" Then
sSQL = "INSERT INTO replies (nuser, email, subject, content, parent_id) VALUES ("" & _
user & "","" & email & "","" & subject & "","" & _
content & ""," & _
pid & ")"
End If

cn.Execute(sSQL)
%>
<p>
<center>
<h3><font color="#ff4500">Ответ успешно добавлен !</h3>
<a href="viewmsg.asp?pid=<%=pid%>" title="[Назад]"
style="color: #556b2f; text-decoration: none; background: #fffafa">
Назад
</a>
</center>
<%
End Sub
%>



Vladimir ;)   (2002-03-26 14:58) [3]

И еще: когда это выполняется в Персонале Веб Сервере, то работает отлично, а ошибку выдает уже с сайта ....



Vladimir ;)   (2002-03-26 15:16) [4]

Может кто-нить поможет ?



aus   (2002-03-26 15:30) [5]

Насколько я понял, ошибка как раз там и появляется
<!--#include file="dbopen.asp"-->
в твоем файле, а где он?
INSERT INTO replies - может быть ты пытаешься в запрос данные вставить?
Если база Access, попробуй подключаться через Jet.



Vladimir ;)   (2002-03-26 17:47) [6]

НЕ, не ... Он имеено делает Break на строке "cn.Execute(sSQL)"



aus   (2002-03-26 21:28) [7]

а остальное проверил, что я написал?
Работа через ODBCb и Jet имеет различия, как раз здесь и может быть ошибка. Исправь все таки строку подключения, наверняка поможет.



Vladimir ;)   (2002-03-26 21:52) [8]

А на что ее исправить ??? (Сорри, я в этом не очень рублю ...)



aus   (2002-03-26 22:26) [9]

Для подключения к базе:
<% set Connection = Server.CreateObject("ADODB.COnnection")
Connection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\DATA\db1.mdb;"
Connection.Open
%>


Думаю, можно разобраться, хотя могут удалить ветку, не Делфи вроде... )))
Но зато БД!




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.75 MB
Время: 0.029 c
1-57784           Pinochet              2002-04-06 10:14  2002.04.18  
Опять к вопросу об алгоритме


1-57683           Roman9                2002-04-07 16:33  2002.04.18  
Как запустить из одной программы другую


1-57746           Geo                   2002-04-05 13:18  2002.04.18  
Как в Delphi 5 /6 установить компонент написанный для преведущих


3-57600           boogier               2002-03-27 11:06  2002.04.18  
Group by + Order by : как сделать, чтобы итоги по группировкам находились внизу?


1-57779           Musket                2002-04-05 21:16  2002.04.18  
Что за странная ошибка?