2012-05-27 3 views
0

오류 메시지 :MySQL + .net에서 오류를 찾을 수 없습니다.

SQL 구문에 오류가 있습니다. 올바른 구문을 찾으려면 MySQL 서버 버전에 해당하는 설명서를 확인하십시오. 'desc') VALUES ('223', 'hhh') '1 행

쿼리에서'desc '를 지우면 코드가 작동 중입니다. 그래서 코드/쿼리에 아무 문제가 없다고 생각합니다.

제가

txtTitle 싱글 라인 텍스트 상자 MySQL을

프론트 엔드 및 설계 방법이다 txtDesc는 VARCHAR 같은 여러 줄

내가 VARCHAR로 제목을 넣어 (45)와 DESC (와 텍스트 상자이다 당신은 예약 된 키워드입니다 필드 이름, 같은 desc 사용하는

string connectionString = @"server=max-5.com.my;userid=user; password=123456;database=myDatabase"; 


MySqlConnection conn = new MySqlConnection(connectionString); 

MySqlCommand cmd = conn.CreateCommand(); 



cmd.Parameters.Add("title", MySqlDbType.VarChar); 

cmd.Parameters["title"].Value = this.txtTitle.Text; 



cmd.Parameters.Add("desc", MySqlDbType.VarChar); 

cmd.Parameters["desc"].Value = Server.HtmlEncode(this.txtDesc.Text); 



cmd.CommandText = "INSERT INTO application(title, desc) VALUES(@title, @desc)"; 



conn.Open(); 

int numberOfRows = cmd.ExecuteNonQuery(); 

conn.Close(); 

Response.Redirect("Page2.aspx"); 

답변

4

: 1000) 이 내 코드입니다. 쿼리에서 주위에 백틱을 사용하십시오.

cmd.CommandText = "INSERT INTO application(title, `desc`) VALUES(@title, @desc)"; 

또는 필드의 이름을 바꿉니다.

+0

thx, desc는 예약 키워드입니다. – melvintcs

관련 문제