#c# #mysql
#c# #mysql
Вопрос:
Я пытаюсь извлечь информацию в gridview, если я использую ниже, это работает
DataTable dt = new DataTable();
OdbcDataAdapter oda = new OdbcDataAdapter("SELECT * FROM patchtest", con);
oda.Fill(dt);
return dt;
}
Я создал запрос с помощью Navicat query builder, и он работает с NaviCat и извлекает информацию, которую я ищу. Когда я пытаюсь сделать это ниже, моя программа просто закрывается без ошибок.
{
DataTable dt = new DataTable();
OdbcDataAdapter oda = new OdbcDataAdapter("SELECT members.`Code`patchtest.PatchID,patchtest.Description,patchtest.Employee,patchtest.Date,patchtest,Results FROM members,patchtest WHERE members.`Code` = patchtest.MemberID", con);
oda.Fill(dt);
return dt;
}
Комментарии:
1. Может быть, опечатка? Вы пропускаете запятую в начале своего
select
заявления.2. Где я пропустил запятую?
3. Попробуйте выбрать в окне командной строки MySQL!
Ответ №1:
Подобные ошибки легче обнаружить, когда вы форматируете свой код.
- Сначала вам понадобится запятая между вашими первыми 2 полями в вашем
select
заявлении. - Второе , что у вас есть
patchtest,Results
, когда у вас должно бытьpatchtest.Results
. - Наконец, я бы рекомендовал использовать
join
запятую в вашемfrom
предложении.
SELECT members.Code,
patchtest.PatchID,
patchtest.Description,
patchtest.Employee,
patchtest.Date,
patchtest.Results
FROM members
JOIN patchtest on members.Code = patchtest.MemberID