You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

68 line
2.0KB

  1. <%
  2. '=======================================================================================================================
  3. ' DB HELPERS
  4. ' Parameterized query/execute on the shared DAL connection. Parameters are built with the typed helpers below:
  5. ' Db_Query "SELECT ... WHERE id = ?", Array(Db_PI(5))
  6. '=======================================================================================================================
  7. Function Db_PS(v)
  8. If IsNull(v) Then
  9. Db_PS = Array(202, Null)
  10. ElseIf Len(v & "") = 0 Then
  11. Db_PS = Array(202, Null)
  12. Else
  13. Db_PS = Array(202, CStr(v))
  14. End If
  15. End Function
  16. Function Db_PI(v)
  17. If IsNull(v) Or IsEmpty(v) Then
  18. Db_PI = Array(3, Null)
  19. ElseIf IsNumeric(v) Then
  20. Db_PI = Array(3, CLng(v))
  21. Else
  22. Db_PI = Array(3, Null)
  23. End If
  24. End Function
  25. Function Db_PD(v)
  26. If IsNull(v) Or IsEmpty(v) Then
  27. Db_PD = Array(7, Null)
  28. ElseIf IsDate(v) Then
  29. Db_PD = Array(7, CDate(v))
  30. Else
  31. Db_PD = Array(7, Null)
  32. End If
  33. End Function
  34. Function Db_Command(sql, params)
  35. Dim cmd, i, p
  36. Set cmd = Server.CreateObject("ADODB.Command")
  37. Set cmd.ActiveConnection = DAL().Connection
  38. cmd.CommandType = 1
  39. cmd.CommandText = sql
  40. For i = 0 To UBound(params)
  41. p = params(i)
  42. If p(0) = 202 Then
  43. If IsNull(p(1)) Then
  44. cmd.Parameters.Append cmd.CreateParameter(, 202, 1, 1, Null)
  45. ElseIf Len(p(1)) > 255 Then
  46. cmd.Parameters.Append cmd.CreateParameter(, 203, 1, Len(p(1)), p(1))
  47. Else
  48. cmd.Parameters.Append cmd.CreateParameter(, 202, 1, Len(p(1)), p(1))
  49. End If
  50. Else
  51. cmd.Parameters.Append cmd.CreateParameter(, p(0), 1, , p(1))
  52. End If
  53. Next
  54. Set Db_Command = cmd
  55. End Function
  56. Function Db_Query(sql, params)
  57. Set Db_Query = Db_Command(sql, params).Execute
  58. End Function
  59. Sub Db_Exec(sql, params)
  60. Db_Command(sql, params).Execute , , 128
  61. End Sub
  62. %>

Powered by TurnKey Linux.