account.vb

来自「asp入门到精通的源代码」· VB 代码 · 共 141 行

VB
141
字号
Imports System
Imports System.Data
Imports System.Data.OleDb

Namespace ASPNETBank

   Public Class Account
      'declare connection object
      private objConn as new OleDbConnection("Provider=" & _
         "Microsoft.Jet.OLEDB.4.0;" & _
         "Data Source=C:\ASPNET\data\banking.mdb")
      private strUsername as string
   
      public sub New(Username as string)
         strUsername = Username
      end sub
      
      '*******************************************************
      ' This function returns the balance of the account with
      ' the specified user ID 
      '*******************************************************
      public function GetBalance() as Decimal
         dim decBalance as decimal
         dim objCmd as new OleDbCommand("spRetrieveBalance", objConn)
         objCmd.CommandType = CommandType.StoredProcedure
         dim objReader as OleDbDataReader
      
         'set parameters for stored procedure
         dim objParam as OleDbParameter
         objParam = objCmd.Parameters.Add("@UserID", _
            OleDbType.BSTR)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = strUsername
      
         try
            objConn.Open()
            decBalance = CType(objCmd.ExecuteScalar, Decimal)
            objConn.Close
         catch ex as OleDbException
            throw ex
         end try
      
         return decBalance
      end function
   
      '*******************************************************
      ' Returns all transactions for a given user id
      '*******************************************************
      public function GetTransactions() as OleDbDataReader
         dim objCmd as new OleDbCommand("spGetTransactions", objConn)
         objCmd.CommandType = CommandType.StoredProcedure
         dim objReader as OleDbDataReader
      
         'set parameters for stored procedure
         dim objParam as OleDbParameter
         objParam = objCmd.Parameters.Add("@UserID", _
            OleDbType.BSTR)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = strUsername
      
         try
            objConn.Open()
            return objCmd.ExecuteReader
         catch ex as OleDbException
            throw ex
         end try
      end function
      
      '*******************************************************
      ' Adds a transaction into the database, calling
      ' spInsertTransaction and specifying amount, payee, and
      ' user id
      '*******************************************************
      public sub AddTransaction(strPayee as string, decAmount _
         as Decimal)
         dim objCmd as OleDbCommand = new OleDbCommand _
            ("spInsertTransaction", objConn)
         objCmd.CommandType = CommandType.StoredProcedure
         
         'set parameters for stored procedure
         dim objParam as OleDbParameter
         objParam = objCmd.Parameters.Add("@Date", _
            OleDbType.Date)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = Datetime.Now
      
         objParam = objCmd.Parameters.Add("@Amount", _
            OleDbType.Decimal)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = decAmount
      
         objParam = objCmd.Parameters.Add("@Payee", _
            OleDbType.BSTR)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = strPayee
      
         objParam = objCmd.Parameters.Add("@UserID", _
            OleDbType.BSTR)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = strUsername
         
         try
            objConn.Open()
            objCmd.ExecuteNonQuery
            objConn.Close
         catch ex as OleDbException
            throw ex
         end try
      end sub
   
      '*******************************************************
      ' Updates the account balance
      ' calls spUpdateBalance
      '*******************************************************
      public sub UpdateBalance(decNewAmount as Decimal)
         dim objCmd as OleDbCommand = new OleDbCommand _
            ("spUpdateBalance", objConn)
         objCmd.CommandType = CommandType.StoredProcedure
         
         'set parameters for stored procedure
         dim objParam as OleDbParameter
         objParam = objCmd.Parameters.Add("@NewBalance", _
            OleDbType.Decimal)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = decNewAmount
      
         objParam = objCmd.Parameters.Add("@UserID", _
            OleDbType.BSTR)
         objParam.Direction = ParameterDirection.Input
         objParam.Value = strUsername
         
         try
            objConn.Open()
            objCmd.ExecuteNonQuery
            objConn.Close
         catch ex as OleDbException
            throw ex
         end try
      end sub
   End Class
End Namespace

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?