これがシナリオです。データベースに 2 つのテーブルがあります。1 つは名前付きプロジェクト、もう 1 つは名前付き割り当てです。プロジェクト テーブルには、プロジェクト ID とプロジェクト名を含む 2 つの列があります。assigns テーブルには、従業員 ID とプロジェクト ID の 2 つの列があります。私がやろうとしているのは、従業員が割り当てられているプロジェクトを誰かが検索するときに、コードではなく名前を表示したいということです。したがって、この ID が割り当てテーブルの ID と一致するグリッドビューのプロジェクト テーブルからプロジェクト名を取得したいと考えています。
これが私の試用コードです:
OdbcCommand assignslist = new OdbcCommand("SELECT projName FROM projects WHERE projID=(SELECT projname FROM assigns where employeeID='" + empid + "')", _connection);
OdbcDataReader readassigns = assignslist.ExecuteReader();
GridView1.DataSource = readassigns;
GridView1.DataBind();
このコードを試すと、エラーが発生します。この従業員に割り当てられたすべてのプロジェクトをグリッドビューに取得したいのですが、誰か助けてもらえますか?!
テーブルの割り当て
従業員 ID プロジェクト名
EJ201 MD101
テーブル プロジェクト
projID projName startDate endDate MD101 testa
MD301 testb
MD930 testc
テーブル エンポス
ID fName midName lName EJ201 jack joe joey
EMP201 abc