Set/Change password - Access 2000
2 отговора
74 прегледа
Set/Change password - Access 2000
Някой знае ли как може да се сложи и смени парола на access таблица (или database) през delphi приложение?
Предварително ви благодаря за мненията
Предварително ви благодаря за мненията
Re: Set/Change password - Access 2000
Ако изпозваш ADO компоненти за достъп до MS ACCESS ти препоръчвам и паролите да сменяш оттам .
Синтаксиса на SQL командата е
ALTER USER user PASSWORD newpassword oldpassword
Внимавай за празни пароли! Ако новата или старата парола е паразна в SQL израза трябва да има null.
Ето ти пример където UserName е глобална променлива съдъжаща UserName на логнатия в монента потребител:
unit ChPwdU;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ADODB;
type
TChPwd = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
ChPwdSQL: TADOCommand;
BitBtn1: TBitBtn;
Label1: TLabel;
Label2: TLabel;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
ChPwd: TChPwd;
implementation
{$R *.dfm}
procedure TChPwd.BitBtn1Click(Sender: TObject);
var oldpass,newpass:string;
begin
if Edit1.Text='' then oldpass:='null'
else oldpass:=Edit1.Text;
if Edit2.Text='' then newpass:='null'
else newpass:=Edit2.Text;
ChPwdSQL.CommandText:='ALTER USER '+(UserName)+' PASSWORD '+newpass+' '+oldpass;
ChPwdSQL.Execute;
end;
procedure TChPwd.FormCreate(Sender: TObject);
begin
ChPwd.Caption:='ПОТРЕБИТЕЛ '+UpperCase(UserName);
end;
end.
Синтаксиса на SQL командата е
ALTER USER user PASSWORD newpassword oldpassword
Внимавай за празни пароли! Ако новата или старата парола е паразна в SQL израза трябва да има null.
Ето ти пример където UserName е глобална променлива съдъжаща UserName на логнатия в монента потребител:
unit ChPwdU;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ADODB;
type
TChPwd = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
ChPwdSQL: TADOCommand;
BitBtn1: TBitBtn;
Label1: TLabel;
Label2: TLabel;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
ChPwd: TChPwd;
implementation
{$R *.dfm}
procedure TChPwd.BitBtn1Click(Sender: TObject);
var oldpass,newpass:string;
begin
if Edit1.Text='' then oldpass:='null'
else oldpass:=Edit1.Text;
if Edit2.Text='' then newpass:='null'
else newpass:=Edit2.Text;
ChPwdSQL.CommandText:='ALTER USER '+(UserName)+' PASSWORD '+newpass+' '+oldpass;
ChPwdSQL.Execute;
end;
procedure TChPwd.FormCreate(Sender: TObject);
begin
ChPwd.Caption:='ПОТРЕБИТЕЛ '+UpperCase(UserName);
end;
end.