0

我目前正在尝试使用 Microsoft Access 2013 来创建公司数据库,我已经在上面运行了很多东西。登录系统,启动时的闪屏,表格,表格,报告,几个查询......

虽然我确实需要为我添加一个部分来将额外的客户添加到列表中,同时保持系统的易用性,但我有一个表单设置 - 我的信息行向下。( ) 使用, 命名 mytextboxesCustomer_ID, First_Name, Surname, Street_Address, Town, Post_Code, Phone_Number, Mobile_phone_Number & Email_Address制作这些,每个都不同,指的是我这边的简单名称。text boxes

问题是 - 我需要use SQL and NOT Visual Basic创建一个工作系统,以便我可以在这些系统中输入数据,点击一个按钮,上面写着添加,然后它将数据添加到我的表和整个系统(报告等)中是吗,也许通过单击“清除”按钮来清除我在上面的文本框中写的所有内容也会很棒。

如果有人可以帮助我,我将非常感激,我需要尽快帮助。

4

1 回答 1

0

Access 使用 VBA 而不是 VB。VBA 与 SQL 的相似之处在于大多数命令在语法上相似。

如果使用 ODBC 将表链接到 Access 前端,则无需编写 SQL/VBA 代码来更新表。但是,如果您确实需要保持数据未绑定,则可以“即时”链接表,或者通过以下方式将信息发送到 SQL 存储过程:

    Dim cnComments As New ADODB.Connection
    'Set up the connection string
    strConn = "PROVIDER=SQLOLEDB;DATA SOURCE=MySQLServername;INITIAL CATALOG=MySQLDBName;"
    cnComments.Open strConn

    Set cmd = New ADODB.Command
    UName = "My Username"
    TName = "My DB"
    With cmd
        .ActiveConnection = strConn
        .CommandType = adCmdStoredProc
        .CommandText = "sp_MyStoredProcedureName"
        .Parameters.Append .CreateParameter("@FNLNUserName", adVarChar, adParamInput, 100, UName)
        .Parameters.Append .CreateParameter("@GetCurrDBName", adVarChar, adParamInput, 150, TName)
        .Execute , , adExecuteNoRecords
    End With

不幸的是,没有更多信息,这是我能做的最好的事情。

编辑:重新阅读您的帖子后,我认为最好的解决方案是使用 ODBC 将 SQL 表链接到 Access,然后在 Access 中使用“未绑定”表单。这将允许您在表单上放置“保存”和“清除”按钮,并且仅在单击“保存”时保存数据。在“保存”按钮后面,您可以使用追加查询或编写 SQL/VBA 将文本框的值写入表中。或者,同样,如上所述,您可以将这些文本框的值发送到 SQL 存储过程并让 SQL 进行更新。

于 2013-05-28T15:37:39.833 回答