Это страница за код, где есть ошибкиНеправильный синтаксис около «»
if (Session["username"] != null)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = ConfigurationManager.ConnectionStrings["registerCS"].ConnectionString;
string sql1 = "Select pemgrp from Profile where userID = '" + Session["username"].ToString() + "'";
string sql = "Select studname from Profile where pemgrp = '" + sql1 + "'";
SqlCommand cmd = new SqlCommand();
SqlDataReader dr;
DataTable dt = new DataTable();
cmd.CommandText = sql;
cmd.Connection = con;
//open connection and execute command
con.Open();
dr = cmd.ExecuteReader();
if (dr.Read())
{
lb_classmates.Text = dr[0].ToString();
}
}
Однако, когда я бегу, он дает мне эту ошибку: Неправильный синтаксис около ключевого слова «где».
Описание: Необработанное исключение произошло во время выполнения текущего веб-запроса. Просмотрите трассировку стека для получения более информации об ошибке и ее месте в коде.
Сведения об исключении: System.Data.SqlClient.SqlException: Неправильный синтаксис рядом с ключевым словом 'where'.
Является ли 'userID'' '' int'? Если это так, не заверните его в апострофы. Но вы должны использовать sql-параметры для предотвращения SQL-инъекций и других проблем в любом случае. –
@TimSchmelter usersID - это строка. – user3021598
его плохая практика, используйте параметры для userId andpemgrp ..он решит многие проблемы. – dotNETbeginner