我正在寻找有关尝试通过文本框和按钮将数据添加到表/查询中的帮助。目前,有两个按钮将连接到文本框;搜索和添加。
搜索 我已经完成了,它搜索附加到表格的查询,以获取您在文本框中输入的输入。简单的。
虽然现在我还想制作一个添加按钮,一旦您将信息放入文本框中并单击添加而不是搜索,它会直接将该信息添加到表格中并保存它,以便您可以在以后的时间点查看.
这是我在网上某处找到的代码,但我不知道如何使用它从文本框中获取数据:
Private Sub Command344_Click()
INSERT INTO OrderT (CustomerName,OrderName,OrderDesc,DateOfPurchase,ProjectDueDate,EngineerDueDate,ProjectComplete,CutplanDueDate,MaterialSpecs,CutplanCode,HardwareSpecs,HardwareDueDate,HardwareComplete,PurchaseOrder,PurchaseSupplier);
VALUES (CustomerName,OrderName,OrderDesc,DateOfPurchase,ProjectDueDate,EngineerDueDate,ProjectComplete,CutplanDueDate,MaterialSpecs,CutplanCode,HardwareSpecs,HardwareDueDate,HardwareComplete,PurchaseOrder,PurchaseSupplier);
End Sub
Run Code Online (Sandbox Code Playgroud)
按钮名称:Command344
文本框名称: CustomerName OrderName OrderDesc DateOfPurchase ProjectDueDate EngineerDueDate ProjectComplete CutplanDueDate MaterialSpecs CutplanCode HardwareSpecs HardwareDueDate HardwareComplete PurchaseOrder PurchaseSupplier
表中的字段名称相同,顺序完全相同,从顶部 -> 底部,左侧 -> 右侧。
表名是 OrderT。
表单名称是 SearchF
我想在我的项目中使用 MS Access。我尝试与这段代码集成。
rs = st.executeQuery("SELECT name FROM MSysObjects where database <> ''");
Run Code Online (Sandbox Code Playgroud)
通过使用它,我尝试从 中获取所有表名MSysObjects。但我收到一个错误:
java.sql.SQLException:[Microsoft][ODBC Microsoft Access Driver] 无法读取记录;没有“MSysObjects”的读取权限。
请帮我解决这个错误。
我有以下示例数据:
ID Name Street Number Code
100 John Street1 1 1234
130 Peter Street1 2 1234
135 Bob Street2 1 5678
141 Alice Street5 3 5678
160 Sara Street1 3 3456
Run Code Online (Sandbox Code Playgroud)
现在我需要一个Query来只返回最后一条记录,因为它的Code是唯一的.
我不是一个很大的Access粉丝,但是对于这个项目,我被要求创建一个Access数据库.我为其他数据库类型创建了类似的东西,所以它并不太难.我已经弄明白了,但是跑步总数让我头疼.
我有下表:表名 attendanceView
查询: SELECT * FROM attendanceView
======================================================================================
agentID | incurrredDate | points | OneFallOff | TwoFallOff
======================================================================================
chtall | 10/7/2013 | 2 | 2 | 2
chtall | 10/15/2013 | 2 | 2 | 2
chtall | 11/26/2013 | 2 | 2 | 2
chtall | 12/17/2013 | 2 | 2 | 2
vimunson | 7/22/2013 | 2 | 2 | 2
vimunson | 7/29/2013 | 2 | 1 | 1
vimunson | 12/6/2013 | 1 | 1 …Run Code Online (Sandbox Code Playgroud) 作为一个新手vba-sql,我试图使用for循环填充表,vba并Docmd.runsql填充表.代码工作正常,但表中的值为:12/30/1899所有记录.我使用了一个消息框来检查并dt正常工作.它给了我循环中的日期并移动到下一个,但在表中它只给了我一个日期:12/30/1899.
Function dateTblUpdate()
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE FROM [date-table]"
Dim dt As Date
For dt = #1/1/2010# To DateSerial(Year(Now), Month(Now), Day(Now))
'MsgBox DateSerial(Year(Now), Month(Now), Day(Now))
'MsgBox dt
DoCmd.RunSQL "Insert into [date-table] (the_date) values(" & dt & ")"
Next
DoCmd.SetWarnings True
End Function
Run Code Online (Sandbox Code Playgroud)
the_date
----------
12/30/1899
12/30/1899
12/30/1899
12/30/1899
12/30/1899
12/30/1899
Run Code Online (Sandbox Code Playgroud)
但预期结果:
the_date
------------
01/01/2010
01/02/2010
01/03/2010
01/04/2010
Run Code Online (Sandbox Code Playgroud)
我的日期列是日期类型,我相信sql认为dt不是日期所以它不保存它并保存默认日期....任何想法?
我正在使用MS Access 2010使用ODBC连接在SQL Server数据库上运行查询.
每当我将查询中涉及的表转换为本地表时,只有当我的字符串通配符是该*字符的ACCESS标准通配符时,我的查询才有效.
但是,如果我的查询涉及SQL DB中的单个链接表,我必须将通配符更改为字符的SQL标准,%以使查询起作用.
确实如此吗?反正这有什么,所以我不需要记住通配符取决于我是否有链接或本地表?
大家好,
我有一个带有子表单的无界表单(它的数据源是一个名为 SaleDetail 的表)。在主窗体上有一个同样无限制的销售 ID 文本框。
我用以下代码创建了一个按钮:
Private Sub btnEndSale_Click()
Dim strPostTime As String
strPostTime = "UPDATE SaleDetail " & _
"SET [TIMEOUT] = Time()" & _
"WHERE SaleDetail.SID = Forms!Sales.Form.sSID"
DoCmd.SetWarnings False
DoCmd.RunSQL strSQL
DoCmd.SetWarnings True
DoCmd.Requery
End Sub
Run Code Online (Sandbox Code Playgroud)
一旦主表单上的 SID 与 SalesDetail 表中的 SID 匹配,我试图获取当前时间来更新 SalesDetail 表中的记录,但它不起作用,但如果我Forms!Sales.Form.sSID用现有 ID(例如 9)替换它,它会起作用. 任何帮助将不胜感激。
我不确定这是否是发布此问题的正确网站,但在这里......
在Access 2007中,我收到错误"运行时错误'3061':参数太少.预期1"在这段VBA代码上:
Private Sub btnCheck_Click()
Dim rs As Recordset
Dim db As Database
Dim id As String
Dim query As String
MsgBox ("one")
Set db = CurrentDb()
id = Me.UniqueID.Value
query = "SELECT [Unique_ID] from tblPatients WHERE [Unique_ID] =" & id
MsgBox (id)
Set rs = db.OpenRecordset(query) <<<<<HIGHLIGHTED LINE
If IsNull(rs) Then
Me.lblCheck.Caption = "NEW"
Else
Me.lblCheck.Caption = "EXISTS"
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
数据源是表,而不是查询.任何帮助将非常感激!
假设我们有以下2个表格:
CREATE TABLE tblProduct
(`Product_ID` int, `Product_Name` varchar(7));
Run Code Online (Sandbox Code Playgroud)
和
CREATE TABLE tblProductExtended
(`Product_ID` int, `Product_Size` int, `Product_Quantity` int);
Run Code Online (Sandbox Code Playgroud)
有了这些价值观:
INSERT INTO tblProduct
(`Product_ID`, `Product_Name`)
VALUES
(1, 'Shoes1'),
(2, 'Shoes2');
Run Code Online (Sandbox Code Playgroud)
和
INSERT INTO tblProductExtended
(`Product_ID`, `Product_size`, `Product_Quantity`)
VALUES
(1, 36, 20),
(1, 37, 20),
(1, 38, 30),
(2, 36, 50),
(2, 37, 60),
(2, 37, 75);
Run Code Online (Sandbox Code Playgroud)
现在很明显,tblProductExpanded中的Product_ID应该是tblProduct的Product_ID的FK.但是,我仍然可以查询:
SELECT tblProduct.Product_ID, Product_Name, Product_Size, Product_Quantity
FROM tblProduct
INNER JOIN tblProductExtended ON tblProduct.Product_id = tblProductExtended.Product_id
Run Code Online (Sandbox Code Playgroud)
哪个回报:
Product_ID Product_Name Product_Size Product_Quantity
1 Shoes1 36 20
1 …Run Code Online (Sandbox Code Playgroud) 得到了奇怪的 Access 项目,在哪里找到了这一行:
strUserName = String$(39, 0)
Run Code Online (Sandbox Code Playgroud)
什么String$意思?
ms-access ×10
vba ×5
sql ×4
access-vba ×1
database ×1
distinct ×1
duplicates ×1
jakarta-ee ×1
java ×1
runtime ×1