Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.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
Asp.net 如何配置SQL语法_Asp.net_Sql - Fatal编程技术网

Asp.net 如何配置SQL语法

Asp.net 如何配置SQL语法,asp.net,sql,Asp.net,Sql,我正在使用asp.net实现网站 我通过aspnet_regsql.exe配置了成员数据库 下面是aspnet_regsql制作的数据库图 我想用下面的列构造数据 **[U.UserName, M.Email, M.LastLoginDate, R.RoleName ]** aspnet_Users AS U aspnet_UsersInRols AS UR aspnet_Roles AS R aspnet_Membership As M 我不知道我怎样才能使自己加入这些表格 你能告

我正在使用asp.net实现网站

我通过aspnet_regsql.exe配置了成员数据库

下面是aspnet_regsql制作的数据库图

我想用下面的列构造数据

**[U.UserName, M.Email, M.LastLoginDate, R.RoleName ]**

aspnet_Users AS U

aspnet_UsersInRols AS UR

aspnet_Roles AS R

aspnet_Membership As M
我不知道我怎样才能使自己加入这些表格

你能告诉我如何配置SQL语法吗

我尝试了这个查询,但没有正确的结果

SELECT  U.UserName, M.Email, M.LastLoginDate, R.RoleName
FROM     aspnet_Users AS U,
             aspnet_UsersInRoles AS UR,
             aspnet_Roles AS R,
             aspnet_Membership AS M
WHERE U.UserId = UR.UserId AND UR.RoleId = R.RoleId AND U.UserId = M.UserId

提前谢谢你。

这应该让你开始了。基本上可以使用键列连接这些列中的值匹配的数据:

SELECT 
    U.Username
    , M.Email
    , M.LastLoginDate
    , R.RoleName
FROM
    aspnet_Users AS U
    JOIN aspnet_UserInRoles AS UR ON U.UserId = UR.UserId
    JOIN aspnet_Roles AS R ON R.RoleId = UR.RoleId
    JOIN aspnet_Membership AS M ON U.UserId = M.UserID
您可以指定哪种类型的
联接(默认值=
内部联接
),它将确定在不匹配时执行的操作,以及将两个表中的数据绑定在一起的列

对于Users和UserInRoles,它是UserID字段

我建议您仔细阅读有关数据库连接的内容。这是一个开始:


aspnet\u成员资格
aspnet\u用户角色
保持连接,因为我不知道它们是否会为每个用户提供详细信息。

您熟悉外键以及外键的用途吗?提示:查看
aspnet\u用户
中的
UserId
aspnet\u成员资格
aspnet\u用户角色
,以及
aspnet\u用户角色
中的
RoleId
。您使用的语法已经过时。尝试使用正确的JOIN语句。也就是说,
从表1中选择连接表1.column=Table2.column
,而不是从表1、表2中选择
,其中table1.column=Table2.coulmn
。感谢您的帮助。我需要学习更多关于SQL语法的知识。非常感谢您的帮助。
SELECT 
    u.UserName,
    m.Email,
    m.LastLoginDate,
    r.RoleName
FROM
    aspnet_Users u
LEFT JOIN
    aspnet_Membership m
ON u.UserId = m.UserId
LEFT JOIN 
    aspnet_UsersInRoles ur
ON u.UserId = ur.UserId
INNER JOIN 
    aspnet_Roles r
ON ur.RoleId = r.RoleId