>FUNCTION CustomerAdd(tcName, tcEmail, tcPassword) > INSERT INTO Customers ; > (cName, ; > cEmail, ; > cPassword) ; > VALUES ; > (tcName, ; > tcEmail, ; > tcPassword) > > RETURN CustomerID >ENDFUNC >>and here's my VB.Net code:
>Public Function AddCustomer(ByVal tcName As String, ByVal tcEmail As String, ByVal tcPassword As String) As Integer > Dim loConnection As OleDbConnection > Dim loCommand As OleDbCommand > Dim loCustID As OleDbParameter > > Dim lcConnectString As String > Dim liCustomerID As Integer > > lcConnectString = "Provider=vfpoledb;Data Source=" & Server.MapPath(".") & "\Data\ss.dbc;Nulls=1" > loConnection = New OleDbConnection(lcConnectString) > loConnection.Open() > > loCommand = New OleDbCommand() > loCommand.Connection = loConnection > loCommand.CommandText = "SET NULL OFF\r\nSET DELETED ON" > loCommand.ExecuteNonQuery() > > loCommand = New OleDbCommand() > loCommand.Connection = loConnection > loCommand.CommandText = "CustomerAdd" > loCommand.CommandType = CommandType.StoredProcedure > > loCustID = New OleDbParameter() > loCustID = loCommand.Parameters.Add("CustomerID", OleDbType.Integer) > loCustID.Direction = ParameterDirection.ReturnValue > > loCommand.Parameters.Add("Name", OleDbType.Char) > loCommand.Parameters.Add("Email", OleDbType.Char) > loCommand.Parameters.Add("Password", OleDbType.Char) > > loCommand.Parameters("Name").Value = tcName > loCommand.Parameters("Email").Value = tcEmail > loCommand.Parameters("Password").Value = tcPassword > > > loCommand.ExecuteNonQuery() > loConnection.Close() > > liCustomerID = CInt(loCustID.Value) > > Return liCustomerID >End Function >>
>System.Data.OleDb.OleDbException: Variable 'Q5P0' is not found. >>
private int addCustomer(string cName, string cEmail, string cPassword) { string lcConStr = "Provider = VFPOLEDB;Data Source=...;"; OleDbConnection loConnection = new OleDbConnection(lcConStr); loConnection.Open(); OleDbCommand loCommand = new OleDbCommand(); loCommand.Connection = loConnection; string lcStoredProc = String.Format("CustomerAdd('{0}','{1}','{2}')", cName,cEmail,cPassword); loCommand.CommandText=lcStoredProc; loCommand.CommandType=CommandType.StoredProcedure; int liRetValue = (int)loCommand.ExecuteScalar(); loConnection.Close(); return liRetValue; }Cetin