判斷輸入的資料是否重覆 |
|
monkeyhung
一般會員 發表:51 回覆:55 積分:21 註冊:2006-12-16 發送簡訊給我 |
我這樣的寫法怎會造成不管輸入什麼資料都會出現編號已存在了
我是在dbedit 的onexit事件下寫的 請各位大大幫我這個新手看看,謝謝 Query1.Close; query1.sql.Clear; Query1.SQL.Text := 'Select * From prod Where Prodno = "' DBEditNO.Text '"'; Query1.Open; if Query1.IsEmpty then begin ShowMessage(DBEditNO.Text ' 編號已存在'); DBEditNO.clear; end; |
chuang7287
初階會員 發表:1 回覆:20 積分:29 註冊:2002-10-22 發送簡訊給我 |
Query1.SQL.Text := 'Select * From prod Where Prodno = "'+ DBEditNO.Text+'"';
改為 Query1.SQL.Add('Select * From prod Where Prodno = "' DBEditNO.Text '"'); if Query1.RecordCount>0 then begin ShowMessage(DBEditNO.Text ' 編號已存在'); DBEditNO.clear; end;
------
結案=動力 高手等等我 .... 追隨高手永不懈怠!! |
monkeyhung
一般會員 發表:51 回覆:55 積分:21 註冊:2006-12-16 發送簡訊給我 |
|
chuang7287
初階會員 發表:1 回覆:20 積分:29 註冊:2002-10-22 發送簡訊給我 |
|
stone0924
一般會員 發表:3 回覆:17 積分:14 註冊:2002-08-13 發送簡訊給我 |
===================引 用 文 章=================== 我這樣的寫法怎會造成不管輸入什麼資料都會出現編號已存在了 我是在dbedit 的onexit事件下寫的 請各位大大幫我這個新手看看,謝謝 Query1.Close; query1.sql.Clear; Query1.SQL.Text := 'Select * From prod Where Prodno = "' DBEditNO.Text '"'; Query1.Open; if Query1.IsEmpty then begin ShowMessage(DBEditNO.Text ' 編號已存在'); DBEditNO.clear; end; 是否是 if not query1.isEMpty then showmessage ............. ???????????? Stone. |
monkeyhung
一般會員 發表:51 回覆:55 積分:21 註冊:2006-12-16 發送簡訊給我 |
|
chuang7287
初階會員 發表:1 回覆:20 積分:29 註冊:2002-10-22 發送簡訊給我 |
依你的作法做了一個,試試吧!
Query1為DBEDIT的資料來源,Query2用來做搜尋用 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, DB, StdCtrls, Mask, DBCtrls, ADODB; type TForm1 = class(TForm) Query1: TADOQuery; DBEdit1: TDBEdit; DataSource1: TDataSource; DBEdit2: TDBEdit; Query2: TADOQuery; procedure DBEdit1Exit(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.DBEdit1Exit(Sender: TObject); begin Query2.Close; query2.sql.Clear; Query2.SQL.Add('Select * From Job Where Job_no = ''' DBEdit1.Text ''''); Query2.Open; if Query2.RecordCount>0 then begin ShowMessage(DBEdit1.Text ' 編號已存在'); DBEdit1.clear; end; end; end. 我的作法通常不會直接將Edit欄位直接連上資料庫,也就是不使用DBEDIT避免資料鎖定 建議你將所有欄位改為Edit方式.當要新增.修改.刪除時使用SQL語法Insert into ,Update or Delete...
------
結案=動力 高手等等我 .... 追隨高手永不懈怠!! |
monkeyhung
一般會員 發表:51 回覆:55 積分:21 註冊:2006-12-16 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |