Saya sedang mencipta sistem pengurusan inventori dalam VB.Net yang fungsi asasnya ialah memproses invois masuk. Saya mahu memasukkan data ke dalam pangkalan data MySQL jauh saya, tetapi hanya jika kotak teks dianggap didayakan. Saya tidak mempunyai masalah untuk memasukkan data ke dalam pangkalan data apabila saya mahu semua medan dimasukkan. Tetapi saya mahu kotak pilihan membolehkan produk tertentu dan membenarkan pekerja memasukkan item tertentu sahaja. Kotak semak membolehkan dan melumpuhkan medan teks seperti yang diperlukan, tetapi apabila data dimasukkan ke dalam pangkalan data ia akan memasukkan nilai nol untuk semua jenis produk, yang saya tidak mahu ia lakukan kerana ia akan mengacaukan sistem invois . Pada masa ini saya telah mencuba pernyataan if then tetapi masalah yang saya hadapi ialah ia menjangkakan kotak teks ditakrifkan yang tidak didayakan. Kod yang saya cuba ialah:
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
Anda tidak boleh hanya memasukkan lajur tanpa baris. Jadi jika anda ingin memasukkan satu lajur, anda perlu memasukkan semua lajur. Jika anda tidak mahu menambah nilai, lajur boleh menjadi NULL atau rentetan kosong, bergantung pada lajur dalam pangkalan data. Anda juga boleh menggunakan
Using
并使用Async/Await
untuk mengalih keluar kerja pangkalan data daripada UIJika saya faham reka bentuk semasa anda,
Nama jadual