我有一个MySql数据库,它有一个users表,所有其他表都连接到users表 .
如果我们登录到id = 1的用户 . 我们想使用user_id = 1向mysql发出所有请求,因此它只会显示来自该特定用户的数据 .
我的Delphi应用程序中有一个登录屏幕,用户可以在其中输入用户名和密码 . 成功登录后,我想要使用user_id并在整个应用程序中进行调用 . 我该怎么办?
成功登录后,我是否应该以某种方式在Delphi中输入此ID并在我们想要拨打电话时访问它?如果是这样,我如何在Delphi中保存此ID,以便以多种形式使用它?
1 回答
一种方法是将DataModule添加到项目中,并使
UserID
为其中的一个字段 .所以,使用Delphi的默认命名,你会有
然后,将TDataModule1添加到项目使用的db-access组件中,例如用于访问存储用户详细信息的Users表的Query组件,以及尝试登录给定用户的方法,以及db-access组件使用的类型的db-connection组件 . 所以你可以添加这样的方法:
并以
DataModule1u
的名称保存模块 . 请注意,此方法省略了对默认True
值的用户's password: This is because if you leave your db connection component' sLoginPrompt
属性的任何引用,它将在LogInUser
方法执行时弹出用户密码的提示 .一旦你've got that far, go to your Login form'单位并编辑它为USE
DataModule1u
.然后你可以添加代码来使用
LogInUser
方法,如下所示:显然,您可以(并且通常应该)将所有数据库访问组件添加到数据模块中,并在执行db-access的表单中使用它 .
希望这一切都清楚,如果不是那么问 .