![](/img/trans.png)
[英]Delphi/Lazarus Filter MSAccess data by SQL Query using DateTimePicker
[英]Using Variables in a MSAccess Function with SQL
我正在努力在所有表格上輸入自定義 ID 號以將所有記錄鏈接在一起,嘗試標准化。
我有一個EmployeeDetails表和一個LoginDetails表。 我的理解是我需要一個名為EmployeeID的字段,並且我可以使用 SQL Select 代碼我必須像其他 forms 一樣提取數據。 Username也是LoginDetails表中的字段名稱, txt_Username是登錄頁面上的用戶名文本框。
現在我只是把它放在登錄屏幕上進行故障排除,但是當創建新員工時它最終會被調用。 唯一的問題是我對如何在 SQL 行中包含變量的知識,即:
Function newID(frm As Form)
Dim db As DAO.Database
Set db = CurrentDb
index = 12345
db.Execute "UPDATE LoginDetails " & "SET EmployeeID = index " & "WHERE Username = frm.txt_username.Value;"
End Function
我已經嘗試了大約 2-3 天,也許在這里和那里幾個小時才能讓它工作,但我開始失去動力。 我設法寫了一行 SQL ,其中有一個 static 值作為 EmployeeID,但是一旦你在混合中添加 VB 變量,它就不喜歡它。
任何人都可以幫助我嗎?
將 SQL 行視為包含 SQL 命令的字符串。
SQL 部分(表名、列名)是 static,您需要連接從訪問它獲得的變量。 所以你的行將是:
db.Execute "UPDATE LoginDetails SET EmployeeID = " & index & " WHERE Username = '" & frm.txt_username.Value & "';"
此外,在連接時最好在 SQL 關鍵字之前留一個空格(防止執行時出現問題)。
db.Execute "UPDATE LoginDetails " & "SET EmployeeID = " & index & " WHERE Username = '" & frm.txt_username.Value &"'; "
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.