私は一意のキーでMySQLデータベースに書きます。理想的には、そのキーを持つ行がすでに存在する場合、更新したい列を更新するだけです。次のような感じです:VB.Net一意のキーでMySQLを更新する
INSERT INTO read_initial(column1,column2) VALUES (%s, %s) ON DUPLICATE KEY UPDATE column1 = VALUES(column1value);
私はこのためにvb.netのバリエーションを見つけようとしています。現時点では、私は切り捨てを実行しており、すべてを書き直していますが、それは明らかに理想的ではありません。
私が使用している挿入のための瞬間:
Using SQLConnection As New MySqlConnection(myBuilder.ConnectionString)
Using sqlCommand As New MySqlCommand()
With sqlCommand
.CommandText = "INSERT INTO read_initial (`column1`, `column2`,) values (@column1value,@column2value)"
.Connection = SQLConnection
.CommandType = CommandType.Text
.Parameters.AddWithValue("@column1", "column1value")
.Parameters.AddWithValue("@column2", column2value)
私は
.CommandText = "INSERT INTO read_initial (`column1`, `column2`,) values (@column1value,@column2value) ON DUPLICATE KEY (`column1`) values (@column1value)"
へのCommandTextを変更しようとしている。しかし、これは権利ではないようです。私はこれについて何か指摘していただければ幸いです。私の唯一の欠点は、すべてのものをPythonスクリプトにソケットで送信して挿入を処理させることですが、これはおそらく構文が間違っていると思われます。
のようになります。「これは右ではないようです」。なぜあなたは説明できませんか?あなたは間違いをするのですか、それともレコードが更新されていませんか? – Mr47