国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

在 VB.Net 中僅將啟用的文本框插入 MySQL
P粉043432210
P粉043432210 2024-02-21 19:42:03
0
1
547

我正在VB.Net中創(chuàng)建一個(gè)庫(kù)存管理系統(tǒng),其基本功能是處理傳入發(fā)票。我想將數(shù)據(jù)插入到我的遠(yuǎn)程 MySQL 數(shù)據(jù)庫(kù)中,但前提是文本框被認(rèn)為已啟用。當(dāng)我希望插入所有字段時(shí),將數(shù)據(jù)插入數(shù)據(jù)庫(kù)沒(méi)有問(wèn)題。但我希望復(fù)選框啟用某些產(chǎn)品并允許員工僅輸入特定項(xiàng)目。這些復(fù)選框確實(shí)根據(jù)需要啟用和禁用文本字段,但是當(dāng)將數(shù)據(jù)插入數(shù)據(jù)庫(kù)時(shí)??,它將為所有產(chǎn)品類型輸入空值,我不希望它這樣做,因?yàn)樗鼤?huì)弄亂發(fā)票系統(tǒng)。目前,我嘗試了 if then 語(yǔ)句,但遇到的問(wèn)題是它希望定義未啟用的文本框。 我嘗試過(guò)的代碼是:

Public Sub btnEnter_Click(sender As Object, e As EventArgs) Handles btnEnter.Click

    Dim mysqlconn as new MySqlConnection ("ServerConnection")
    mysqlconn.Open()
    dim mysqlCmd as new MysqlCommand
    mysqlcmd.Connection = MysqlConn
    
    mysqlcmd.CommandText = "Insert into Table_Name (Column1,Column2,Column3) Values (@rec1,@Rec2,@Rec3)"
    
    If txtTextbox1.Enabled = True then
        mysqlcmd.Parameters.AddWithValue("@Rec1",Column1.text)
    End If
    
    If txtTextBox2.Enabled = True then
        mysqlcmd.Parameters.AddWithValue(@Rec2,Column2.text)
    End IF
    
    IF txtTextBox3.Enabled = True then
        mysqlcmd.Parameters.AddWithValue(@Rec3,Column3.text)
    End If

P粉043432210
P粉043432210

全部回復(fù)(1)
P粉739706089

您不能只插入沒(méi)有行的列。因此,如果要插入一列,則必須插入所有列。如果您不想添加值,則該列可以是 NULL 或空字符串,具體取決于數(shù)據(jù)庫(kù)中的列。還可以使用 Using 并使用 Async/Await 將數(shù)據(jù)庫(kù)工作從 UI 中移除

Public Async Sub btnEnter_Click(sender As Object, e As EventArgs) Handles btnEnter.Click
    ' if your columns take NULL to mean no value
    Await AddParams(
        If(txtTextbox1.Enabled, Column1.Text, Nothing),
        If(txtTextbox2.Enabled, Column2.Text, Nothing),
        If(txtTextbox3.Enabled, Column3.Text, Nothing))
    ' else, if an empty string means no value
    Await AddParams(
        If(txtTextbox1.Enabled, Column1.Text, ""),
        If(txtTextbox2.Enabled, Column2.Text, ""),
        If(txtTextbox3.Enabled, Column3.Text, ""))
End Sub

Private Function AddParams(param1 As String, param2 As String, param3 As String) As Task
    Return Task.Run(
    Sub()
        Using mysqlconn As New MySqlConnection("ServerConnection")
            mysqlconn.Open()
            Using mysqlCmd As New MySqlCommand("Insert into Table_Name (Column1,Column2,Column3) Values (@rec1,@Rec2,@Rec3)", mysqlconn)
                mysqlCmd.Parameters.AddWithValue("@Rec1", param1)
                mysqlCmd.Parameters.AddWithValue("@Rec2", param2)
                mysqlCmd.Parameters.AddWithValue("@Rec3", param3)
            End Using
        End Using
    End Sub)
End Function

如果我理解你當(dāng)前的設(shè)計(jì),

表名稱

ID 第 1 列 第 2 列 第 3 列
1 abc 定義 ghi
2 jkl mno pqr
最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板