Como adicionar entradas fornecidas pelo usuário a uma instrução SQ
Estou tentando criar uma instrução SQL usando dados fornecidos pelo usuário. Eu uso código semelhante a este em c #:
var sql = "INSERT INTO myTable (myField1, myField2) " +
"VALUES ('" + someVariable + "', '" + someTextBox.Text + "');";
var cmd = new SqlCommand(sql, myDbConnection);
cmd.ExecuteNonQuery();
e isso em VB.NET
Dim sql = "INSERT INTO myTable (myField1, myField2) " &
"VALUES ('" & someVariable & "', '" & someTextBox.Text & "');"
Dim cmd As New SqlCommand(sql, myDbConnection)
cmd.ExecuteNonQuery()
Contudo
isso falha quando a entrada do usuário contém aspas simples (por exemplo,O'Brien
), Não consigo obter o formato correto ao inserir valores DateTime es pessoas continuam me dizendo que não devo fazer isso por causa da "injeção SQL"Como faço "do jeito certo"?