Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : Access 2013, Office 2013
Cet exemple illustre la méthode Execute lorsqu'elle est exécutée à la fois à partir d'un objet Command et d'un objet Connection. Elle utilise également la méthode Requery pour récupérer les données actuelles d'un objet Recordset et la méthode Clear pour effacer le contenu de la collection Errors. (L'accès à la collection Errors est réalisé via l'objet Connection de la propriété ActiveConnection de l'objet Recordset.) Nommez le fichier ExecuteJS.asp.
<!-- BeginExecuteJS -->
<%@LANGUAGE="JScript"%>
<%// use this meta tag instead of adojavas.inc%>
<!--METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" -->
<%
strLastName = new String(Request.Form("AuthorLName"));
if (strLastName.indexOf("undefined") > -1)
strLastName = "";
%>
<html>
<head>
<title>Execute, Requery and Clear methods example (JScript)</title>
<style>
<!--
BODY {
font-family: 'Verdana','Arial','Helvetica',sans-serif;
BACKGROUND-COLOR:white;
COLOR:black;
}
-->
</style>
</head>
<body bgcolor="White">
<h1>Execute, Requery and Clear methods example (JScript)</h1>
<%
if (strLastName.length > 0)
{
// command and recordset variables
var Connect = "Provider='sqloledb';Data Source=" + Request.ServerVariables("SERVER_NAME") + ";" +
"Initial Catalog='pubs';Integrated Security='SSPI';";
var Cnxn = Server.CreateObject("ADODB.Connection");
var cmdAuthor = Server.CreateObject("ADODB.Command");
var rsAuthor = Server.CreateObject("ADODB.Recordset");
var rsAuthor2 = Server.CreateObject("ADODB.Recordset");
var SQLAuthor2, strMessage, strMessage2;
var Err, ErrCount;
try
{
// open connection
Cnxn.Open(Connect);
// command object parameters
cmdAuthor.CommandText = "SELECT * FROM Authors WHERE au_lname = ?";
cmdAuthor.Parameters.Append(cmdAuthor.CreateParameter("Last Name", adChar, adParamInput, 20, strLastName));
cmdAuthor.ActiveConnection = Cnxn;
// recordset from command.execute
rsAuthor = cmdAuthor.Execute();
// recordset from connection.execute
SQLAuthor2 = "SELECT * FROM Authors";
rsAuthor2 = Cnxn.Execute(SQLAuthor2);
// check for errors
ErrCount = Cnxn.errors.count;
if(ErrCount !== 0) //write the errors
{
for(Err = 0; Err = ErrCount; Err++){
Err = Cnxn.errors.item;
Response.Write(Err);
}
// clean out any existing errors
Cnxn.Errors.Clear;
}
// show the data
Response.Write("<HR><HR>");
// first recordset
Response.Write("<b>Command.Execute results</b>")
while (!rsAuthor.EOF)
{
// build output string by starting a new line
strMessage = "<P>";
strMessage += "<br>";
// recordset data
strMessage += rsAuthor("au_fname") + " ";
strMessage += rsAuthor("au_lname") + " ";
// end the line
strMessage += "</P>";
// show the results
Response.Write(strMessage);
// get next record
rsAuthor.MoveNext;
}
Response.Write("<HR><HR>");
// second recordset
Response.Write("<b>Connection.Execute results</b>")
while (!rsAuthor2.EOF)
{
// start a new line
strMessage2 = "<P>";
// first and last name are in first column
strMessage2 += rsAuthor2("au_fname") + " "
strMessage2 += rsAuthor2("au_lname") + " ";
// end the line
strMessage2 += "</P>";
// show results
Response.Write(strMessage2);
// get next record
rsAuthor2.MoveNext;
}
}
catch (e)
{
Response.Write(e.message);
}
finally
{
// clean up
if (rsAuthor.State == adStateOpen)
rsAuthor.Close;
if (rsAuthor2.State == adStateOpen)
rsAuthor2.Close;
if (Cnxn.State == adStateOpen)
Cnxn.Close;
rsAuthor1 = null;
rsAuthor2 = null;
Cnxn = null;
}
}
%>
<hr>
<form method="POST" action="ExecuteJS.asp" id=form1 name=form1>
<p align="left">Enter last name of author to find (e.g., Ringer): <input type="text" name="AuthorLName" size="40"></p>
<p align="left"><input type="submit" value="Submit" name="B1"><input type="reset" value="Reset" name="B2"></p>
</form>
</body>
</html>
<!-- EndExecuteJS -->