最近、店舗で働く人々がデータベースに新製品を入力しようとしたときに、システムでPoint of saleシステムをコーディングしていました。梨のような野菜であれば飲み物はL(リットル)、リンゴ(KG)のキログラムでなければなりません。私は文字列の名前のtip(型)を作成しましたが、エラーが出ます。タイプが表示される製品を挿入するたびにではありません。ここでvb.netのコンボボックスの値
は私のコードです:
konekcija = New MySqlConnection
konekcija.ConnectionString =
"server=localhost;userid=root;password=1234;database=baza;port=3307"
Dim READER As MySqlDataReader
Dim kupovnacena As Double
Dim prodaznacena As Double
Dim kolicina As Double
Dim profit As Double
Dim ddv As Double
Dim mkpr As String
Dim edmerka As String
If ComboBox3.SelectedIndex = 1 Then
edmerka = "парче"
End If
If ComboBox3.SelectedIndex = 2 Then
edmerka = "кг"
End If
If ComboBox3.SelectedIndex = 3 Then
edmerka = "мг"
End If
If ComboBox3.SelectedIndex = 4 Then
edmerka = "Л"
End If
COMMAND.Connection = konekcija
COMMAND.CommandText = "INSERT INTO baza.artikli VALUES(@kod,@naziv,@nabavna,@prodazna,@ddv,@kolicina,@opis,@opis2,@mkproizvod,@profit,@proizvoditel,@edmerka)"
COMMAND.Prepare()
COMMAND.Parameters.AddWithValue("@kod", TextBoxBarkod.Text)
COMMAND.Parameters.AddWithValue("@naziv", TextBoxNaziv.Text)
COMMAND.Parameters.AddWithValue("@nabavna", TextBoxKupovna.Text)
COMMAND.Parameters.AddWithValue("@prodazna", TextBoxProdazna.Text)
COMMAND.Parameters.AddWithValue("@ddv", ddv)
COMMAND.Parameters.AddWithValue("@kolicina", TextBoxKolicina)
COMMAND.Parameters.AddWithValue("@opis", TextBoxOpis.Text)
COMMAND.Parameters.AddWithValue("@opis2", TextBoxOpis2.Text)
COMMAND.Parameters.AddWithValue("@mkproizvod", mkpr)
COMMAND.Parameters.AddWithValue("@profit", profit)
COMMAND.Parameters.AddWithValue("@proizvoditel", TextBoxProizvoditel.Text)
COMMAND.Parameters.AddWithValue("@edmerka", edmerka)
COMMAND.ExecuteNonQuery()
パラメータを使用し、 'COMMAND.ExecuteNonQuery()'を使用してください。挿入物をしているので、 'READER'は必要ありません。 – Bugs
あなたはSQLインジェクションに脆弱です。 [パラメータ化されたクエリ](https://dev.mysql.com/doc/connector-net/en/connector-net-programming-prepared-preparing.html)を使用します。 – Ryan
私は自分のデータの挿入に助けを求めていない、それは正常に動作し、ソフトウェアはインターネットに接続されていないローカルコンピュータでも使用され、データは秘密ではありません。 – Trajkovski