请看下面的代码:
Namespace DataAccessGateway
Public Class clsAudit
Implements IAudit
Private _ConString As String
Private _Provider As String
Public Sub New()
_ConString = ConfigurationManager.ConnectionStrings("dbConnection").ConnectionString
_Provider = ConfigurationManager.ConnectionStrings("dbConnection").ProviderName
End Sub
Public Function AddAudit(ByVal tyDeletion As typeDeletion) As Integer Implements IAudit.AddAudit
Dim intCount As Integer
Dim objParameterValues As New clsParameterValues
Dim iConnectionBLL As iConnectionBLL
Dim tyInnkeeperPremises As New typeInnkeeperPremises
Dim objCon As DbConnection
Try
Dim paramValues() As DbParameter
objParameterValues = New clsParameterValues
iConnectionBLL = New clsConnectionBLL()
objCon = iConnectionBLL.getDatabaseTypeByDescription("AUDIT")
Using objCon
Dim strSQL As String
strSQL = "INSERT INTO dbAudit (Reference) VALUES (@Reference)"
objParameterValues.AssignParameterValues("@Reference", tyDeletion.Reference, 1)
paramValues = objParameterValues.getParameterValues
intCount = clsDatabaseHelper.ExecuteNonQuery(objCon, CommandType.Text, strSQL, paramValues)
End Using
Return intCount
Catch ex As Exception
Return -1
End Try
End Function
End Class
End Namespace
该代码被称为批处理作业的一部分,即它可以在一天内一次被调用一千万次。审计数据库的连接字符串存储在加密的数据库表中,即 tbl_database(getDatabaseTypeByDescription 查询该表)。因此,数据库必须查询一千万次才能获得相同的连接字符串一千万次。将连接字符串放在静态变量中是不好的做法还是有更好的方法?
我意识到将连接字符串放在配置文件中会更好,但我希望保持一致。