【问题标题】:Time Format Issues时间格式问题
【发布时间】:2015-10-05 05:48:41
【问题描述】:

想知道是否有人可以帮助我。将数据添加到访问数据库时,我收到以下错误消息。我知道这是一个时间问题功能,但我不知道如何修复它,因此我可以以所需的格式将数据添加到数据库中。为“tblmph”设置的验证规则“Time()”禁止一个或多个值。输入此字段的表达式可以接受的值。

Public Sub Add_Data()

    con.Open()

    Dim rs As New OleDb.OleDbCommand("Insert into tblmph(ID,ThisDate,TimeStart,TimeFinish,Notes) " _
        & "values ('" & TextBox1.Text & "' , '" & TextBox2.Text & "' , '" & TextBox3.Text & "' , '" _
        & TextBox4.Text & "', '" & TextBox5.Text & "')", con)

    rs.ExecuteNonQuery()

    con.Close()
    Display_Data()

End Sub 

列的格式如下

  • ID = 自动长整数
  • ThisDate = 短日期
  • TimeStart = 中时间,默认值 = Time()
  • TimeFinish = 中时间,默认值 = Time()
  • 笔记 = 备忘录

【问题讨论】:

  • 您能提供更多关于验证规则的细节吗?属性和值? -- 另外,我不应该在我的编辑中使用下划线来续行,因为这是 VB.NET,而不是 vba。
  • 所有列都不是字符串,但这是您为每个列传递的内容。您似乎在重用您的连接,并且您的代码也很容易受到 SQL 注入攻击。 Here are some tips
  • 对不起,伙计,这超出了我的想象。我是一个新手,所以我学习缓慢,需要一点耐心。
  • 插入 ID 是我能看到的唯一问题。

标签: vb.net ms-access


【解决方案1】:

不要插入 ID 的值。如果它确实是一个自动编号,Access 会自动为新插入的行分配一个值。尝试向字段中插入值会导致错误并阻止插入工作。

将您的 Dim 声明更改为:

Dim rs As New OleDb.OleDbCommand( "Insert into tblmph( ThisDate, TimeStart, TimeFinish, Notes ) values ( '" & TextBox2.Text & "' , '" & TextBox3.Text & "' , '" & TextBox4.Text & "', '" & TextBox5.Text & "' ) ", con)

【讨论】:

    猜你喜欢
    • 2011-09-09
    • 1970-01-01
    • 2020-10-26
    • 1970-01-01
    • 2021-12-19
    • 2018-09-23
    • 1970-01-01
    相关资源
    最近更新 更多