【问题标题】:how to insert Data into SQL Database?如何将数据插入 SQL 数据库?
【发布时间】:2020-06-28 16:33:32
【问题描述】:

在数据库中,我使用了分配的 ProgName = varcharMaleCuteOff = intFemaleCutOff=int,并且我正在尝试收集用户输入的值,但我收到 错误

从字符串“INSERT INTO CutOff_Point((ProgN”) 转换为类型 整数无效。

Sub save()

    Dim query As String = "INSERT INTO CutOff_Point (ProgName, MaleCutOff, FemaleCutOff) VALUES (@colProg, @colMale, @colFemale)"
    Using con As New SqlConnection("Data Source=.;Initial Catalog=UEW_ADMISSION_CHEAKER;Integrated Security=True")
        Using com As New SqlCommand()
            With com
                .Connection = con
                .CommandType = query
                .Parameters.AddWithValue("@colProg", cmbProg.SelectedItem.ToString)
                .Parameters.AddWithValue("@colMale", txtMaleCut.Text.ToString)
                .Parameters.AddWithValue("@colFemale", txtFemaleCut.Text.ToString)

            End With
            Try
                con.Open()
                com.ExecuteNonQuery()

            Catch ex As SqlException
                MessageBox.Show(ex.Message.ToString(), "Saving data Not Complete")

            End Try
        End Using
    End Using

End Sub

【问题讨论】:

  • 小错误:它是 CommandText = query 而不是 CommandType = query
  • 如果这些列的类型为int,为什么要使用Strings 设置最后两个参数?除此之外,在String 上调用ToString 有什么意义?你正在做这一切。 ex.Message 也是 String 那么你为什么要调用 ToString 呢?这表明您并没有真正考虑自己是数据类型,而只是调用ToStringwilly-nilly。
  • 非常感谢,我脑子里有很多困惑

标签: database vb.net azure-sql-database sql-insert


【解决方案1】:

这个:

.CommandType = query

应该设置Commandtext,而不是CommandType。当您可以使用构造函数时,为什么要首先设置这些属性?

Using com As New SqlCommand(query, con)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-02-19
    • 2016-09-02
    • 2017-08-22
    • 1970-01-01
    • 1970-01-01
    • 2012-10-21
    • 2011-01-29
    相关资源
    最近更新 更多