public int InsertPayment(String cardholderName, String cardType, String cardNumber, DateTime cardExpiration)
        {
            DataSet ds = new DataSet();
            DataSetTableAdapters.paymentsTableAdapter adapter = new DataSetTableAdapters.paymentsTableAdapter();

            adapter.Insert(cardholderName, cardType, cardNumber, cardExpiration);
            // this is a *bad* way of getting the record's identity, but MS Access doesn't support batch SQL statements
            // a real DB would be able to combine the insert statement and a select statement in one batch call!
            int identity = (int)adapter.GetIdentity();
            return identity;
        }