基于登录详细信息的SQL Select语句


SQL Select statement based on login details

我有一个数据库,我希望用户根据用户名从一个名为"entry"的表中检索信息。

因此,我希望user1登录,然后创建一个select语句来获取用户名,在username表中查找它,然后使用存储的人名值(这是user表中的一列)来运行一个查询,以显示该人的所有记录。

这可能吗?

提前感谢

编辑:

对不起,这个问题的形式太糟糕了。基本上,我有一个用户表,其中包含用户登录详细信息和字段-studentName,Site,Username,Password

然后,我有另一个名为entry的表,它保存了所有用户的记录,包括以下字段:entryID、date、studentName、field1、field2、field3等

要做的是让用户像现在一样登录,并根据用户名生成一个查询,以获取该特定学生的所有记录。

这能让我更好地了解我想要得到什么吗?

如果它是Oracle,那么你可以做:

SELECT a,b,c
FROM entry
WHERE username = user  -- user is an Oracle keyword that returns 
                       -- the oracle user name of the user running the query.

可能有点远,但要创建一个名为User的表,该表的Id为Name&UserName和一个名为details的具有UserId的相关表,以及其他具有详细信息的列,下面的简单联接将起作用。字符串"AUserName"也是从应用程序传入的值。

SELECT User.Name, Details.*
FROM User
INNER JOIN Details
ON User.Id = Details.UserId
WHERE User.Username = 'AUserName'

但这是基于你的问题的猜测,添加更多细节,你会得到更好的答案