我的业务逻辑放在dll中,
dll中定义如下:
function Modipassbill(app:TApplication;dbconn:TMSConnection):string;
var
ModiPass: TModiPass;
oldapp:TApplication;
begin
oldapp:=Application;
Application:=app;
ModiPass:=TModiPass.Create(nil);
with ModiPass do
begin
conn:=dbconn;
Mainshow;
Free;
end;
Application:=oldapp;
end;
主程序传一个数据库connection到dll.
查询数据都没问题。执行sql语句也没问题,但就是执行后数据库无变化。不知道怎么回来。数据库组件用的sdac mssql
msqry1.SQL.Text:='select * from users where userid='''+ uid +'''';
msqry1.Open;
if Trim(edtoldpass.Text)=msqry1.FieldByName('password').AsString then
begin
if Trim(edtNewpass.Text)=Trim(edtnewpasst.Text) then
begin
msqry1.Edit;
msqry1.FieldByName('password').AsString:=Trim(edtoldpass.Text);
try
msqry1.Connection.StartTransaction;
msqry1.Post;
msqry1.Connection.Commit;
ShowMessage('修改密码成功!');
Close;
except
ShowMessage('修改密码失败!');
msqry1.Connection.Rollback;
Close;
end;
end
else
begin
ShowMessage('两次输入的新口令不一致,请重新输入!');
edtoldpass.SetFocus;
end;
end
else
begin
ShowMessage('旧口令错误,请重新输入!');
edtoldpass.SetFocus;
end;
各位老大帮我看看,搞了一天了。
dll中定义如下:
function Modipassbill(app:TApplication;dbconn:TMSConnection):string;
var
ModiPass: TModiPass;
oldapp:TApplication;
begin
oldapp:=Application;
Application:=app;
ModiPass:=TModiPass.Create(nil);
with ModiPass do
begin
conn:=dbconn;
Mainshow;
Free;
end;
Application:=oldapp;
end;
主程序传一个数据库connection到dll.
查询数据都没问题。执行sql语句也没问题,但就是执行后数据库无变化。不知道怎么回来。数据库组件用的sdac mssql
msqry1.SQL.Text:='select * from users where userid='''+ uid +'''';
msqry1.Open;
if Trim(edtoldpass.Text)=msqry1.FieldByName('password').AsString then
begin
if Trim(edtNewpass.Text)=Trim(edtnewpasst.Text) then
begin
msqry1.Edit;
msqry1.FieldByName('password').AsString:=Trim(edtoldpass.Text);
try
msqry1.Connection.StartTransaction;
msqry1.Post;
msqry1.Connection.Commit;
ShowMessage('修改密码成功!');
Close;
except
ShowMessage('修改密码失败!');
msqry1.Connection.Rollback;
Close;
end;
end
else
begin
ShowMessage('两次输入的新口令不一致,请重新输入!');
edtoldpass.SetFocus;
end;
end
else
begin
ShowMessage('旧口令错误,请重新输入!');
edtoldpass.SetFocus;
end;
各位老大帮我看看,搞了一天了。
解决方案 »
- 关于AdoTable SQL Server 视图 插入 修改等
- 我的数据库恢复之后显示成功,但数据还是原来的数据!请高手指点,在线等
- Fastreport横向打印(弱问)
- 如何把数据库中显示到Form中,在线等待!!!!
- 关于TIdFTP异常,这个控件比较扁,希望高人指点
- 这个sql语句如何写???(sql server2000)
- copyfile()中参数要求是pchar,请问如何将string转换过去?我已经无分
- 同时访问某个sqlserver表时出错!!!
- 深入研究过 SystrayIcon 的请进来看看┅┅(100分请教,问题解决,马上给分)
- 怎样防止form的多次显示?
- 为什么我写的程序在别人的机子上用不了
- 请教一个关于var类型数据如何使用问题!
在dll中先在myqry1.open后面加上showmessage看看,这里是否返回结果
逻辑上没问题,具体多加几个showmessage看看是哪步出错了吧