John ugo
John ugo

Reputation: 11

syntax error (missing operator) in sql query expression

try
        {

            string Query = "SELECT Registrations list FROM [Records] WHERE textBox = '" + comboBox.SelectedValue + "'";
            OleDbConnection me = new OleDbConnection(connection);
            OleDbCommand constr = new OleDbCommand(Query, me);
            OleDbDataReader reader;
            connection.Open();
            reader = constr.ExecuteReader();

            if (reader.Read())
            {
                OleDbParameter parameter = constr.Parameters.Add(new OleDbParameter("Registrations list", OleDbType.Integer));
                textBox.Text = reader["Registrations list"].ToString();
            }
            me.Close();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);
        }
    }

Im trying to get database values to display in textbox but keep getting the error, i've tried mostly everything possible

Upvotes: 1

Views: 718

Answers (3)

Stefano Cazzola
Stefano Cazzola

Reputation: 1687

I suppose there is an error in the SQL

string Query = "SELECT Registrations list FROM [Records] WHERE textBox = '" + comboBox.SelectedValue + "'";

Between SELECT and FROM there should be a comma separated list of columns belinging to the table Records. If you want to label the column place the keyword as between the column name and uts label.

If you placed a white space in the column name (never saw, never did, don't even know if it's possible at all), try including the column name between single quotes. Or (much better) rename the column.

Upvotes: 0

M.Ali
M.Ali

Reputation: 69514

wrap the column name with square brackets

SELECT [Registrations list] FROM [Records] WHERE textBox

Otherwise sql server looks for a column called Registrations and then tries to alias it as [List]

Upvotes: 1

Rahul Tripathi
Rahul Tripathi

Reputation: 172408

Enclose the column name in square brackets.

SELECT [Registrations list] 

If the column names contais space then you need to enclose the column name in square brackets else SQL Server will consider it as two column names and since comma will also be not present hence it will give you syntax error.

Upvotes: 0

Related Questions