Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从数据库获取信息_C#_Sql_Database - Fatal编程技术网

C# 从数据库获取信息

C# 从数据库获取信息,c#,sql,database,C#,Sql,Database,这将是一个noob问题,但我有一个问题,当我想根据另一个表中的外键获取数据时,问题是我无法找到执行此操作的sql 我有以下表格: 用户:登录、密码、角色标识、用户详细信息标识 角色:角色id、角色名称 用户详细信息:userDetail\u id,姓名 现在,我想获取角色id为4的所有用户的姓名,并将其显示在asp下拉控件中 谢谢你的帮助,因为我真的很困惑 您的sql将是: SELECT name, surname FROM USER_DETAILS ud, USERS u WHERE ud

这将是一个noob问题,但我有一个问题,当我想根据另一个表中的外键获取数据时,问题是我无法找到执行此操作的sql

我有以下表格:

  • 用户
    登录、密码、角色标识、用户详细信息标识

  • 角色
    角色id、角色名称

  • 用户详细信息
    userDetail\u id,姓名

现在,我想获取角色id为4的所有用户的姓名,并将其显示在asp下拉控件中

谢谢你的帮助,因为我真的很困惑

您的sql将是:

SELECT name, surname
FROM USER_DETAILS ud, USERS u
WHERE ud.userDetail_id = u.userDetail_id
 AND u.role_id = 4;
 DataTable dt =   @"Select name, surname from USER_DETAILS as ud
    Inner Join USERS as u on ud.userDetail_id = u.userDetail_id
    Inner join ROLES as r on u.role_id = r.role_id
    where u.role_id = 4";
然后可以将数据表绑定到下拉列表:

    dropdown.DataSource = dt;
    dropdown.DataTextField = "name";
    dropdown.DataBind();

您还可以使用
左加入
从用户详细信息中选择名称、姓氏ud LEFT JOIN USERS u ON(ud.userDetail\u id=u.userDetail\u id),其中u.role\u id=4
SELECT ud.name, ud.surname 
FROM user_details ud, roles uroles, users u
WHERE ud.userDetail_id = u.userDetail_id 
AND u.role_id = uroles.role_id 
AND uroles.role_id = 4