Jump to content

Can't get the proper sql string


DavidAtWork

Recommended Posts

I'm trying to write a sql string that will allow me to enter paramaterized values into a table. Im using Visual Studio 2005, .net 2.0, c#, ASP.NET web form, oracle odbc data source names. ex....String inputFirstName = FirstNameTxtBox.Text;String inputLastName = LastNameTxtBox.Text;String inputCompany = CompanyNameTxtBox.Text;//**********************************************string strSQL = "INSERT INTO MYTable (Firstname, Lastname, Company) VALUES (@EnteredFirstName, @EnteredLastName, @EnteredCompany)";//***** If I use this string I get an ORA-00936 Missing expression error. *** //**********************************************string strSQL = "INSERT INTO MYTable (Firstname, Lastname, Company) VALUES ('@EnteredFirstName', '@EnteredLastName', '@EnteredCompany')";//***** If I use this string it enteres data as read and not the parameter values. *** OdbcConnection conn = new OdbcConnection(ConfigurationManager.ConnectionStrings["DBConn"].ConnectionString); OdbcCommand myODBCCommand = new OdbcCommand(strSQL, conn); OdbcParameter param1 = new OdbcParameter(); param1.ParameterName = "@EnteredFirstName"; param1.Value = inputFirstName; OdbcParameter param2 = new OdbcParameter(); param2.ParameterName = "@EnteredLastName"; param2.Value = inputLastName; OdbcParameter param3 = new OdbcParameter(); param3.ParameterName = "@EnteredCompany"; param3.Value = inputCompany; myODBCCommand.Parameters.Add(param1); myODBCCommand.Parameters.Add(param2); myODBCCommand.Parameters.Add(param3);conn.Open();myODBCCommand.ExecuteNonQuery();I have confirmed the parameter values are being populated, they are just not being passed to the DB via the string.Can anyone help?thanks...David

Link to comment
Share on other sites

Nevermind,Figured it out.ODBC uses "Positional Parameter Markers" referenced as a ?.So the striing needed to look like this...string strSQL = "INSERT INTO MYTable (Firstname, Lastname, Company) VALUES (?,?,?)";Just make sure the parameters are in the correct order.David

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...