Пример свойств ActiveConnection, CommandText, CommandTimeout, CommandType, Size и Direction (JScript)
В этом примере для выполнения хранимой процедуры используются свойства ActiveConnection, CommandText, CommandTimeout, CommandType, Size и Direction . Вырезайте и вставьте следующий код в Блокнот или другой текстовый редактор и сохраните его как ActiveConnectionJS.asp.
<!-- BeginActiveConnectionJS -->
<%@LANGUAGE="JScript"%>
<%// use this meta tag instead of adojavas.inc%>
<!--METADATA TYPE="typelib" uuid="00000205-0000-0010-8000-00AA006D2EA4" -->
<html>
<head>
<title>ActiveConnection, CommandText, CommandTimeout, CommandType, Size, and Direction Properties</title>
<style>
<!--
BODY {
font-family: 'Verdana','Arial','Helvetica',sans-serif;
BACKGROUND-COLOR:white;
COLOR:black;
}
.thead {
background-color: #008080;
font-family: 'Verdana','Arial','Helvetica',sans-serif;
font-size: x-small;
color: white;
}
.thead2 {
background-color: #800000;
font-family: 'Verdana','Arial','Helvetica',sans-serif;
font-size: x-small;
color: white;
}
.tbody {
text-align: center;
background-color: #f7efde;
font-family: 'Verdana','Arial','Helvetica',sans-serif;
font-size: x-small;
}
-->
</style>
</head>
<body bgcolor="White">
<%
var iRoyalty = parseInt(Request.Form("RoyaltyValue"));
// check user input
if (iRoyalty > -1)
{
// connection and recordset variables
var Cnxn = Server.CreateObject("ADODB.Connection")
var strCnxn = "Provider='sqloledb';Data Source=" + Request.ServerVariables("SERVER_NAME") + ";" +
"Initial Catalog='pubs';Integrated Security='SSPI';";
var cmdByRoyalty = Server.CreateObject("ADODB.Command");
var rsByRoyalty = Server.CreateObject("ADODB.Recordset");
var rsAuthor = Server.CreateObject("ADODB.Recordset");
// display variables
var filter, strMessage;
try
{
// open connection
Cnxn.Open(strCnxn);
cmdByRoyalty.CommandText = "byroyalty";
cmdByRoyalty.CommandType = adCmdStoredProc;
cmdByRoyalty.CommandTimeOut = 15;
// The stored procedure called above is as follows:
// CREATE PROCEDURE byroyalty
// @percentage int
// AS
// SELECT au_id from titleauthor
// WHERE titleauthor.royaltyper = @percentage
// GO
prmByRoyalty = Server.CreateObject("ADODB.Parameter");
prmByRoyalty.Type = adInteger;
prmByRoyalty.Size = 3;
prmByRoyalty.Direction = adParamInput;
prmByRoyalty.Value = iRoyalty;
cmdByRoyalty.Parameters.Append(prmByRoyalty);
cmdByRoyalty.ActiveConnection = Cnxn;
// recordset by Command - Execute
rsByRoyalty = cmdByRoyalty.Execute();
// recordset by Recordset - Open
rsAuthor.Open("Authors", Cnxn);
while (!rsByRoyalty.EOF)
{
// set filter
filter = "au_id='" + rsByRoyalty("au_id")
rsAuthor.Filter = filter + "'";
// start new line
strMessage = "<P>";
// get data
strMessage += rsAuthor("au_fname") + " ";
strMessage += rsAuthor("au_lname") + " ";
// end line
strMessage += "</P>";
// show data
Response.Write(strMessage);
// get next record
rsByRoyalty.MoveNext;
}
}
catch (e)
{
Response.Write(e.message);
}
finally
{
// clean up
if (rsByRoyalty.State == adStateOpen)
rsByRoyalty.Close;
if (rsAuthor.State == adStateOpen)
rsAuthor.Close;
if (Cnxn.State == adStateOpen)
Cnxn.Close;
rsByRoyalty = null;
rsAuthor = null;
Cnxn = null;
}
}
%>
<hr>
<form method="POST" action="ActiveConnectionJS.asp">
<p align="left">Enter royalty percentage to find (e.g., 40): <input type="text" name="RoyaltyValue" size="5"></p>
<p align="left"><input type="submit" value="Submit" name="B1"><input type="reset" value="Reset" name="B2"></p>
</form>
</body>
</html>
<!-- EndActiveConnectionJS -->
См. также:
Свойство ActiveCommand (ADO)
Объект Command (ADO)
Свойство CommandText (ADO)
Свойство CommandTimeout (ADO)
Свойство CommandType (ADO)
Объект Connection (ADO)
Свойство Direction
Объект Parameter
Объект Record (ADO)
Объект Recordset (ADO)
Свойство Size (объект Parameter ADO)
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по