[ASP] Connection ASP + SQL 2000 Server

Connection ASP + SQL 2000 Server [ASP] - ASP - Programmation

Marsh Posté le 28-06-2003 à 10:28:22    

Bonjour,
 
Est-ce qu'un âme charitable pourrait le filer soit un link, soit
 
Le script de connection à une base de données sous SQL 2000 Server (BDD + autentification).
 
Ainsi que le synthaxe d'un select afin que je puisse démarrer.
 
Merci de votre aide
 
 
PS : Mes essaies sont :
 

<%
 
Dim cnnMediatheque
Dim rsMediatheque
 
 
set cnnMediatheque = Server.CreateObject("ADODB.Connection" )
cnnMediatheque.ConnectionTimeout = 1200
cnnMediatheque.ConnectionString = "DRIVER={SQL Server};DATABASE=Mediatheque;SERVER=10.1.10.3;UID=mediatheque;PWD=mediatheque;"
cnnMediatheque.Open
 
rs.close
Set rs=Nothing
cnnMediatheque.Close
Set cnnMediatheque=Nothing
response.write Affiche
%>

Reply

Marsh Posté le 28-06-2003 à 10:28:22   

Reply

Marsh Posté le 28-06-2003 à 11:08:09    

Essaie 2 à l'aide du code d'un bouquin
 

<%
 
Dim oConn
Dim cmdSQL
Dim rsPubs
Dim strConn
 
Set oConn = Server.CreateObject("ADODB.Connection" )
cmdSQLSet cmdSQL = Server.CreateObject("ADODB.Command" )
Set rsPubs = Server.CreateObjet("ADODB.Recordset" )
 
strConn = "Provider=SQLOLEDB;Server=.;username=mediatheque;password=;database=mediatheque"
oConn.Open strConn
 
 
 
 
rsPubs.CursorType = adOpenKeyset
rsPubs.LockType = adLockOptimisctic
rsPubs.Open "authors", oConn, , , adCmdtable
rsPubs.AddNew
rsPubs("au_fname" ) = "Duplicate"
rsPubs("au_lname" ) = "Author"
rsPubs.Update
 
 
 
cmdSQL.CommandText = "SELECT * FROM Films"
cmdSQL.ActiveConnection = oConn
rsPubs = cmdSQL.Execute
rsPubs.CursorLocation = adUseClient
rsPubs.Open cmdSQL, , adOpenStatic, adLockBatchOptimistic
rsPubs("au_lname" ).Properties("Optimize" ) = True
rsPubs.Sort = "au_lname"
rsPubs.MoveFirst
Response.Write "<p>ADO Inserts in ASP.NET </p>"
if rsPubs.BF and rsPubs.EOF then
Response.Write "<p> Pas d'enregistrements ! </p>"
 
else
Do While Not rsPubs.EOF
Response.Write "<br>" & rsPubs("au_fname" ).Value & "" & rsPubs("au_lname" ).Value & "</br>"
rsPubs.MoveNext
Loop
 
end if
rsPubs.Close
Set rsPubs = nothing
oConn.Close
Set oConn = Nothing
Set cmdSQL = Nothing
 
%>


 
Toujours Erreur 500 Interne Explorer

Reply

Marsh Posté le 28-06-2003 à 12:35:56    

J'ai répondu dans l'autre topic.
 
Bon, après relecture de ce que t'as fait, domage, t'était pas loin d'avoir trouvé.
 
Alors premièrement, dans IE, vas dans les paramètres et décoche "message d'erreur simplifiés" Comme ça, t'auras les erreurs ASP et pas une pauvre page "erreur 500", tu verras, ça ira beaucoup mieu ;)
 
Ensuite, n'utilise pas les constantes ad en ASP, il ne les connaît pas par défaut.
 
De toute façon, utilise les valeurs par défaut, elles sont tout à fait bien pour l'ASP, il ne faut pas utiliser d'autres valeurs.

Reply

Marsh Posté le 28-06-2003 à 12:47:40    

MagicBuzz a écrit :

connectionString = "Provider=SQLOLEDB.1;User ID=USER;Password=PASSWORD;Initial Catalog=NOM_DE_LA_BASE;Data Source=NOM_OU_IP_DU_SERVER;Persist Security Info=True;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=NOM_DU_SERVEUR_WEB;Use Encryption for Data=False;Tag with column collation when possible=False"
 
PS: Seuls les 5 premiers paramètres sont obligatoires. Les paramètres en gras doivent être remplacés par les valeurs qui son les tiennes.
 
Exemple simple de connection puis d'utilisation de requête.
 

dim cnx
set cnx = Server.CreateObject("ADODB.Connection" )
cnx.Open Application("connectionString" )
 
dim rsMail
set rsMail = server.CreateObject("ADODB.RecordSet" )
rsMail.ActiveConnection = cnx
sql = "SELECT LOGIN, EMAIL FROM UTILISATEUR WHERE RIGHTS >= 50 AND SEND_MAIL = 1"
rsMail.Open sql
do while not rsMail.EOF
 if rsMail("LOGIN" ) <> LOGIN then
  sendMail rsMail("EMAIL" ), 1, "Nouvel article dans la catégorie """ & page & """", user & " a créé un nouvel article dans la catégorie """ & page & """" & vbcrlf & "http://www.manga-torii.com/default.asp?page=" & page & "&amp;id=" & id & vbcrlf & titre
 end if
rsMail.movenext
loop
rsMail.Close
set rsMail = nothing
 
cnx.close()
set cnx = nothing



Reply

Marsh Posté le 28-06-2003 à 12:48:10    

Donc ta requete se connecte et envoie un mail à des users.
 
Maintenant si tu veux bien m'accorder un instant, je pense avoir saisi la chose, mais mon code provoque une erreur
 
J'ai crée une page (PS les retour à la ligne ne sont pas tous réels)
 
_connexion.asp
 

<%
connectionString = "Provider=SQLOLEDB.1;User ID=mediatheque;Password=mediatheque;Initial Catalog=Mediatheque;Data Source=10.1.10.3;Persist Security Info=True;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=Skun-mms1;Use Encryption for Data=False;Tag with column collation when possible=False"
%>


 
Code de ma page asp
 
bdd.asp

<HTML>
<BODY>
 
 
<!-- #include file="_connexion.asp"-->  
 
<%
dim cnx
set cnx = Server.CreateObject("ADODB.Connection" )
cnx.Open Application("connectionString" )
 
dim rsMail
set rsMail = server.CreateObject("ADODB.RecordSet" )
rsMail.ActiveConnection = cnx
' sql = "SELECT LOGIN, EMAIL FROM UTILISATEUR WHERE RIGHTS >= 50 AND SEND_MAIL = 1"
sql = "SELECT NomFilm FROM Films"
rsMail.Open sql
do while not rsMail.EOF
' if rsMail("LOGIN" ) <> LOGIN then
'  sendMail rsMail("EMAIL" ), 1, "Nouvel article dans la catégorie """ & page & """", user & " a créé un nouvel article dans la catégorie """ & page & """" & vbcrlf & "http://www.manga-torii.com/default.asp?page=" & page & "&amp;id=" & id & vbcrlf & titre
 
Response.Write "<br>" & rsMail("NomFilm" ).Value "</br>"
 
 end if
rsMail.movenext
loop
rsMail.Close
set rsMail = nothing
 
cnx.close()
set cnx = nothing
 
%>
 
</BODY>


 
J'obtiens une erreur 500 d'Internet Explorer

Reply

Marsh Posté le 28-06-2003 à 12:49:03    

J'ai utilisé ce tuto
 
http://www.asp-php.net/tutorial/asp-php/connexion.php  
 
 
J'ai désactivé l'affichage des erreurs simplifié
 
Erreur de compilation Microsoft VBScript erreur '800a0401'  
 
Fin d'instruction attendue  
 
/bdd.asp, ligne 22  
 
Response.Write "<br>" & rsMail("NomFilm" ).Value "</br>"
------------------------------------------------^  
 
 
Je bosse dessus. On peut rester sur ce topic si tu veux bien.

Reply

Marsh Posté le 28-06-2003 à 12:52:33    

:heink: Où est passée ma précédente réponse ??? Anyway, je la reposte :
 
1) T'as oublié un &
 
2) Pas la peine d'utiliser de ".value", c'est la propriété par défaut en ASP
 
 
 
Oups, et j'ai oublié.
 
Replace le :
 

cnx.Open Application("connectionString" )


 
Par :
 

cnx.Open connectionString


Message édité par MagicBuzz le 28-06-2003 à 12:56:24
Reply

Marsh Posté le 28-06-2003 à 12:54:17    

Désolé, c'est un peu difficile de suivre avec deux topics ouverts..  :jap:  
 
En tout cas merci j'ai bien avancé avec ton aide
 
 
J'ai ajouté le & en effet et corrigé  
 

cnx.Open connectionString


 
Mais nouvelle erreur...
 
Erreur de compilation Microsoft VBScript erreur '800a0400'  
 
Instruction attendue  
 
/bdd.asp, ligne 24  
 
end if rsMail.movenext
^


Message édité par Jef34 le 28-06-2003 à 12:55:02
Reply

Marsh Posté le 28-06-2003 à 12:58:51    

Oui c'est le bordel...
 
Ne remonte que celui-là !
 
 
Bon, remote à ma précédente réponse, j'ai remis ce que je t'ai répondu dans l'autre topic. C'est la raison de ton erreur actuelle.
 
Sinon c'est pas ".BF", mais ".BOF"

Reply

Marsh Posté le 28-06-2003 à 13:00:07    

Ah... Et t'as neutralisé le "if", donc faut aussi neutraliser le "end if"

Reply

Marsh Posté le 28-06-2003 à 13:00:07   

Reply

Marsh Posté le 28-06-2003 à 13:00:41    

Reply

Marsh Posté le 28-06-2003 à 13:02:52    

Recu ca marche... Je te suis 1000x reconnaissant de ton aide... Très explicique..
 
PS : Je pourrais continuer à t'emmerder ponctuellement sur ce topic ?  :??:   :ange:  
 
Oui ou non merci...  :love:

Reply

Marsh Posté le 28-06-2003 à 13:05:37    

Crée plutôt des nouveaux topics plutôt que d'utiliser des anciens.
 
Mais sinon, pas de problème, je viens là pour ça ;)

Reply

Marsh Posté le 28-06-2003 à 15:21:39    

Je t'ai envoyé en MP le link de mon site.
 
Comme tu peux le voir, je m'entraine sur un BDD de films.
 
Les jaquettes des films sont stockées sur le meme site.
 
J'ai donc initialisé une variable avec le chemin puis compte utilisé la colonne jaquette pour batir l'URL qui va afficher la jaquette.
 
J'ai réussis tu peux le voir sur le site avec la page films.asp


Message édité par Jef34 le 28-06-2003 à 16:09:48
Reply

Marsh Posté le 30-06-2003 à 15:34:37    

Tu peux m'indiquer comment utiliser une notion de LIKE dans ce type de requete ?
 

requetesql = "SELECT * FROM Films ORDER BY NomFilm"
 
extraction.Open requetesql
 
Response.Write "<table BORDER=""1"" CELLSPACING=""0"" CELLPADDING=""0"" ALIGN=""LEFT"">"
 
 
do while not extraction.EOF
 
if extraction("NomFilm" )=Request.QueryString("nomfil" ) then
 
Response.Write "<tr>"


 
J'aurais mis
 

requetesql = "SELECT * FROM Films WHERE NomFilm LIKE '%Request.QueryString("nomfil" )%' ORDER BY NomFilm"
 
extraction.Open requetesql
 
Response.Write "<table BORDER=""1"" CELLSPACING=""0"" CELLPADDING=""0"" ALIGN=""LEFT"">"
 
 
do while not extraction.EOF
 
if extraction("NomFilm" )=Request.QueryString("nomfil" ) then
 
Response.Write "<tr>"


 
Mais bien sur... ca marche pas... Quelle est le caractère d'échappement sous ASP ?

Reply

Marsh Posté le 30-06-2003 à 15:45:35    

Bah oui, sort la variable de ta chaîne...
 
"..." & var & "...", pas "...var..." sinon ça marche pas...

Reply

Marsh Posté le 30-06-2003 à 17:23:01    

En gros concaténation... OK merci ca marche (comme tu l'aurais deviné).

Reply

Marsh Posté le 07-07-2003 à 08:34:16    

Salut..
 
Ca fait longtemps, maintenant je me débrouille un peu tout seul, sauf que je bute sur un problème
 
Comment instancier
 
r = SELECT DISTINCT IdClient FROM Prets WHERE DatedeRetour IS NULL AND DatePrevue<GETDATE()
 
Le "<" avant GETDATE() fait que  
r = SELECT DISTINCT IdClient FROM Prets WHERE DatedeRetour IS NULL AND DatePrevue
 
J'ai déjà essayé de le doubler ou de faire de la concaténation sans succes.


Message édité par Jef34 le 07-07-2003 à 08:34:51
Reply

Marsh Posté le 07-07-2003 à 17:27:07    

euh... c'est quoi ton "r" ?
 
 
pkoi y'a pas de " autour de la requête ? tu cherches à faire quoi au juste ?

Reply

Marsh Posté le 07-07-2003 à 17:38:56    

Jef34 a écrit :

Salut..
 
Ca fait longtemps, maintenant je me débrouille un peu tout seul, sauf que je bute sur un problème
 
Comment instancier
 
r = SELECT DISTINCT IdClient FROM Prets WHERE DatedeRetour IS NULL AND DatePrevue<GETDATE()
 
Le "<" avant GETDATE() fait que  
r = SELECT DISTINCT IdClient FROM Prets WHERE DatedeRetour IS NULL AND DatePrevue
 
J'ai déjà essayé de le doubler ou de faire de la concaténation sans succes.


 

r = "SELECT DISTINCT IdClient FROM Prets WHERE DatedeRetour IS NULL AND DatePrevue< " & DATE() & "


 
C marche pas ca ?

Reply

Marsh Posté le 08-07-2003 à 16:28:28    

Non, en fait c'est le caractère "<" qui le dérange. En inversant GETDATE()>DatePrevue ca marche

Reply

Marsh Posté le 08-07-2003 à 18:50:27    

Jef34 a écrit :

Non, en fait c'est le caractère "<" qui le dérange. En inversant GETDATE()>DatePrevue ca marche


Y'a une couille dans le potage, parceque le signe < marche aussi bien que le signe >.
 
Tu peux poster le bout de code correspondant à ton problème ? Parceque je vois toujours pas ce que c'est que cette requête qui n'est pas entre guillements et qui est affectée à une variable... :heink:

Reply

Marsh Posté le 08-07-2003 à 20:22:35    

Ben en effet yavait une couille... En fait now ca marche
 
requete = "SELECT DISTINCT IdClient FROM Prets WHERE DatedeRetour IS NULL AND DatePrevue<GETDATE()"
 
Autant avec < et >


Message édité par Jef34 le 08-07-2003 à 20:24:44
Reply

Marsh Posté le 08-07-2003 à 20:28:36    

MagicBuzz a écrit :


Y'a une couille dans le potage, parceque le signe < marche aussi bien que le signe >.
 
Tu peux poster le bout de code correspondant à ton problème ? Parceque je vois toujours pas ce que c'est que cette requête qui n'est pas entre guillements et qui est affectée à une variable... :heink:


 
Sorry, j'avais oublié de copier les " lors de mon post..  
 
Thanks et autant pour moi :jap:

Reply

Marsh Posté le 01-05-2004 à 12:37:36    

J'ai fait beaucoup de recherche, peut être mal renseignée, mais quel est le code afin d'utiliser l'autentification Intégré des serveurs SQL 2000 Serveur avec un code ASP ?
 
Trouvé
 
http://msdn.microsoft.com/library/ [...] Server.asp


Message édité par Jef34 le 01-05-2004 à 12:48:53
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed