delphi中如何判断DBGrid中的同一列的值相同?
展开全部
一般这种做法是插入记录前对数据库的记录进行判断,如果有则报警,没有则插入:
举个例子:
比如你的数据表名为:AA,表里面第三列的字段名为:BB,窗体上你放入一个Edit控件用来输入第三字段的内容,那么在插入记录前你就可以写下这样的语句来判断:
if edit1.Text<>'' then //edit控件不为空的时候
begin
ADOQuery1.Close; //一般情况下要先关闭
ADOQuery1.SQL.Clear; //清除之前的查询内容
ADOQuery1.SQL.Add('select * from AA where BB='''+edit1.Text+''''); //查询数据表中BB字段中有没有与Edit里输入内容相同的记录
ADOQuery1.Open;
if ADOQuery1.RecordCount>0 then //假如有记录则提示
begin
Application.MessageBox('数据库中已有此记录!', '警告', MB_OK);
end;
end;
举个例子:
比如你的数据表名为:AA,表里面第三列的字段名为:BB,窗体上你放入一个Edit控件用来输入第三字段的内容,那么在插入记录前你就可以写下这样的语句来判断:
if edit1.Text<>'' then //edit控件不为空的时候
begin
ADOQuery1.Close; //一般情况下要先关闭
ADOQuery1.SQL.Clear; //清除之前的查询内容
ADOQuery1.SQL.Add('select * from AA where BB='''+edit1.Text+''''); //查询数据表中BB字段中有没有与Edit里输入内容相同的记录
ADOQuery1.Open;
if ADOQuery1.RecordCount>0 then //假如有记录则提示
begin
Application.MessageBox('数据库中已有此记录!', '警告', MB_OK);
end;
end;
展开全部
1. 设置数据库时 该字段 为不可重复,或为主键
2. Update Insert 之前执行一次查询
2. Update Insert 之前执行一次查询
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
每条记录插入表里之前,先判断。例如表里列名为 name ,该列要插入的值为 peter ,判断方法为:
sql:='select * from t_table where name='+'''peter'';
查找后,根据 qry.recordcount 等于0还是大于0判断是否有重复记录。有的话弹出提示框
sql:='select * from t_table where name='+'''peter'';
查找后,根据 qry.recordcount 等于0还是大于0判断是否有重复记录。有的话弹出提示框
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
提交前,从数据库中判断即可。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询