vb錄入資料庫access重複問題

2022-09-23 10:46:36 字數 4121 閱讀 2713

1樓:匿名使用者

通常,乙個資料庫應用系統,總會具有查詢功能,就是根據輸入的關鍵資訊,到資料庫裡找到並顯示有關記錄。(比如:輸入職工號,顯示出該職工的記錄資訊。)

你的這個系統,不可能只有資料錄入的功能,一定會有資料查詢功能吧?

其實,為了防止錄入相同的記錄,在真正新增到資料庫之前,首先進行查詢,如果找到同樣的記錄,就提示已經存在該記錄,並不進行新增!反之進行新增記錄!

2樓:滿以柳

一般利用相關textbox 控制項 的validate()事件或keypress()事件 處理:

如:在錄入「客戶編碼」時,當游標離開該textbox 控制項,利用 validate()事件進行查重

private sub text1_validate()

dim adoconn as adodb.connection

dim adorect as adodb.recordset

if trim(text1)<>"" then

adoconn.open "資料庫連線字串..."

adorect.open "select * from 客戶資訊表 where 客戶編號='"+trim(text1)+"'",adoconn,adopenstatic, adlockreadonly

if not adorect.bof and not adorect.eof then

msgbox "客戶編碼重複!"

cancel=true

exit sub

end if

end if

end sub

3樓:匿名使用者

儲存資料之前,用客戶資訊做為條件去資料庫中查詢下有沒有存在,如果有,就執行你想執行的動作.

access如何使錄入資料重複時會提示資料是否錄入,點是錄入,否不錄入,謝謝

4樓:常山大寶

在表中直接錄入的話不能達到你的要求,只有在窗體中錄入才可以!

下面以【學生資訊表】中的【姓名】欄位為例進行說明:

在【姓名】字段【失去焦點】事件中寫入判斷是否有姓名重複**。

有重複則彈出詢問框,是否繼續?

回答【否】則清除姓名框,並且把焦點返回姓名等待重新輸入。。

private sub 姓名_lostfocus()if dcount("姓名", "學生資訊表", "姓名='" & 姓名 & "'") > 0 then

if msgbox("您錄入的姓名重複!是否繼續?", vbyesno) = vbno then

me.姓名.value = "" '清除姓名控制項內的內容me.

學號.setfocus '為把焦點返回姓名控制項做準備me.姓名.

setfocus '焦點返回姓名,等待重新輸入end if

end if

end sub

在往vb連線access資料庫輸入時怎樣判斷輸入是否重複?

5樓:匿名使用者

private sub command3_click()on error resume next

if text1.text="" thenmsgbox "請輸入要新增的型號!", vbokonly, "提示"

exit sub

end if

data1.recordset.addnewif err then

msgbox "新增失敗!可能是型號重複了。請檢查。", vbokonly, "錯誤"

end if

end sub

6樓:匿名使用者

顯然你的**是有問題的

xh=「select *..."這句,估計你想查到主鍵存在與否,但是事實上你這句是乙個賦值語句,只是叫xh變數="select *....

給你二個思路,1、在增加新的記錄前先查詢這個序號是否存在,這個很簡單啊,請仔細看相關的資料2、捕捉是主鍵重複的錯誤 用on error

7樓:匿名使用者

沒用的東西還要謝謝他

8樓:匿名使用者

在存入前,先select這個主鍵,如果存在就提示存在,不儲存就好了。

vb access錄入問題,當有相同編號數量增加,不再錄入基本資訊,沒有相同編號則直接錄入access

9樓:匿名使用者

dim conn as new adodb.connection

dim rsxy as new adodb.recordset

dim sqlxy as string

sqlxy = "select 數量 from xykc where 商品編號='" & trim(txtfields(0).text) & "'"

conn.open (adodc2.connectionstring)

rsxy.open sqlxy, conn, 3, 3

if rsxy.eof then

adodc2.recordset.addnew

adodc2.recordset(0) = txtfields(0).text

adodc2.recordset(1) = txtfields(1).text

adodc2.recordset(4) = txtfields(2).text

adodc2.recordset(3) = txtfields(3).text

adodc2.recordset(6) = txtfields(10).text

adodc2.recordset(5) = txtfields(5).text

adodc2.recordset(8) = txtfields(8).text

adodc2.recordset(9) = txtfields(9).text

adodc2.recordset(2) = combo2.text

adodc2.recordset(7) = combo1.text

adodc2.recordset.update

else

rsxy.fields("數量") = val(rsxy.fields("數量")) + val(txtfields(5).text)

rsxy.update

end if

10樓:匿名使用者

if adodc2.recordset.recordcount=0 then

adodc2.recordset.addnew

adodc2.recordset(0) = txtfields(0).text

adodc2.recordset(1) = txtfields(1).text

adodc2.recordset(4) = txtfields(2).text

adodc2.recordset(3) = txtfields(3).text

adodc2.recordset(6) = txtfields(10).text

adodc2.recordset(5) = txtfields(5).text

adodc2.recordset(8) = txtfields(8).text

adodc2.recordset(9) = txtfields(9).text

adodc2.recordset(2) = combo2.text

adodc2.recordset(7) = combo1.text

adodc2.recordset.update

endif

access資料庫vba判斷輸入使用者名稱與主鍵是否重複的錯誤

11樓:mexico卡卡

private sub command3_click()on error resume next

if text1.text="" thenmsgbox "請輸入要新增的型號!", vbokonly, "提示"

exit sub

end if

data1.recordset.addnewif err then

msgbox "新增失敗!可能是型號重複了。請檢查。", vbokonly, "錯誤"

end if

end sub

access資料庫問題,ACCESS資料庫的問題!

給你個可行的試試,可以的話麻煩給個肯定以及最佳,謝謝 首先備份表abc到另乙個新錶中abc bak,然後將abc表匯出為excel 然後將 abc 中 where mac 1100的所有記錄刪除,開啟匯出的excel只保留mac 1100的記錄,然後將mac那一列清空,將第一行的mac列公式寫為 i...

vb中,如何在access資料庫的表裡增加字段

dim as adodb.connectiondim rs as adodb.recordsetset new adodb.connectionset rs new adodb.recordset open strconn strconn是事先定義好的乙個資料庫連線字串 rs.open select...

Access資料庫和Visual FoxPro資料庫有什麼區別

沒有根本性的差異的 都是關係型資料庫 都是小型資料庫 都是微軟開發的 要說差異主要就是程式語言的差異 vfp有自己的語言,access支援的是vba語言。您是準備考計算機二級嗎?這兩個資料庫我都略微有所接觸。都是在 的基礎上作用初步的一些程式設計技巧實現大量的資料自動化管理。access相比vf具有...