sql >> Databáze >  >> RDS >> Mysql

MySQL / Classic ASP - Parametrizované dotazy

Kód ve vašem druhém úryvku je správný, ale měl by být aplikován na nový ADODB.Command objektu, nikoli k Connection objekt:

username = Trim(Request("username"))

'-----Added this-----
Dim cmdContent
Set cmdContent = Server.CreateObject("ADODB.Command")

' Use this line to associate the Command with your previously opened connection
Set cmdContent.ActiveConnection = connContent
'--------------------

cmdContent.Prepared = True

Const ad_nVarChar = 202
Const ad_ParamInput = 1

SQL = " SELECT * FROM users WHERE (username=?) ; "

Set newParameter = cmdContent.CreateParameter("@username", ad_nVarChar, ad_ParamInput, 20, username)
cmdContent.Parameters.Append newParameter

cmdContent.CommandText = SQL
Set rs = cmdContent.Execute

If NOT rs.EOF Then
        ' Do something...
End If

rs.Close

Mimochodem, došlo k překlepu s pravopisem adParamInput namísto ad_ParamInput (opraveno v mém příkladu).




  1. Jak vypočítat rozdíl mezi dvěma časovými razítky v MySQL

  2. Proč vyšší LIMIT MYSQL offset zpomaluje dotaz?

  3. Průvodce rozdělením dat v PostgreSQL

  4. Mysql count vrací nulu, pokud nebyl nalezen žádný záznam