2

私は2つのテーブルを持っています..

Students

  • 学生証
  • 名前
  • 学校ID

School

  • 学校ID
  • 学校名。

これが私のシナリオですDetailsView。X StudentID とその列を表示するページを作成しました。SchoolID (Students テーブルから) 列を表示すると、実際の ID が想定どおりに表示されます。

学校IDの代わりに実際の学校名を表示する方法を知りたいのですが、最初に行ったのは、学校の名前を表示する最初のクエリ内にクエリを作成することでした...

SELECT StudentID, (SELECT SchoolName FROM Schools 
                WHERE Schools.SchoolID = Students.SchoolID) 
                FROM Students WHERE StudentID=1

これは機能しますが、 経由GridViewでレコードを編集しようとすると問題が発生し、それらのフィールドに正しいデータが保存されません。

の編集手順ではGridView、SchoolID キーを SchoolName にバインドできますが、クエリ内にクエリがある場合は機能しません。

私の質問は、SQL コマンドを変更せずに Visual Studio 内で外部キー データを表示するにはどうすればよいですか?

4

2 に答える 2

1

以前の解決策は、(SQLDatasource の作成後に) Select コマンドを編集して、意味のあるフィールド名を含むテーブルで内部結合を実行することでした。

ここをチェック

1.リンク

2.リンク

于 2012-12-21T05:39:11.333 に答える
1

結合クエリでそれを行うことができます。例:

select students.StudentId,students.Name,students.SchoolID,school.SchoolName from students join school on students.SchoolID=school.SchoolID

そして、「JOINS」の理解を深めるために、次のリンクが便利です: http://www.sitepoint.com/understanding-sql-joins-mysql-database/

于 2012-12-21T07:56:36.310 に答える