정적 문자열 connStrCheckData = "Provider = Microsoft.ACE.OLEDB.12.0; 데이터 원본 ="+ Server.MapPath ("test.xlsx") + "; 확장 속성 = Excel 12.0;";삽입 OleDbException 구문 오류
정적 문자열 oledbConnCheckData = new OleDbConnection (connStrCheckData);
string adsName = "MagMall.com - 1000 매 잡지 구독료 절감";
OleDbCommand cmd = new OleDbCommand(); cmd.CommandType = CommandType.Text; cmd.CommandText = "[sheet1 $] ([column1]) 값에 삽입 ('"+ adsName.ToString(). Trim() + "')"; cmd.Connection = oledbConnCheckData;
oledbConnCheckData.Open();
cmd.ExecuteNonQuery();
oledbConnCheckData.Close();
Errro : 구문 오류 쿼리 식 (누락 된 연산자) ''MagMall.com - 잡지의 1000의에 가입 절감 ')'.
위의 오류 "MagMall.com - 잡지의 구독료 절감"단어를 삽입하려고했을 때 위와 같은 오류가 발생했습니다. 1000 년대의 (하지 \ ') : 유르겐 말했듯이
하이픈 "-"은 문제를 일으킬 수 있습니다. 그리고 adsName의 값은 루프에서 매번 변경되고, 어떻게 변수에 이스케이프를 적용 할 수 있습니다. – Shailesh
adsName.ToString(). Trim(). Replace (" '", "\'")하지만 여전히 오류가 발생했습니다. – Shailesh
@Shailesh :'adsName.ToString(). Try(). Replace (" '", "\\'")' –