Mysql
 sql >> база данни >  >> RDS >> Mysql

Добра превенция от MYSQL инжектиране?

Можете да използвате Parameters.Add тъй като вграденият текст позволява извършване на инжектиране, пример за по-добър SQL е:

using (var conn = new SqlConnection( @"datasource=localhost;port=3306;username=root;password=xdmemes123"))
{
    conn.Open();
    var command = new SqlCommand("", conn);
    command.CommandText = "select * from life.players where DBname='@sqlName' and DBpass='@sqlPass";
    command.Parameters.Add("@sqlName", SqlDbType.VarChar ).Value = this.username.Text;         
    command.Parameters.Add("@sqlPass", SqlDbType.VarChar ).Value = this.password.Text;
    using (SqlDataReader myReader = command.ExecuteReader())
    {
       while (myReader.Read())
       {
           string value = myReader["COLUMN NAME"].ToString();
       }
    }    
}

В допълнение към проблема с инжектирането, вие не хеширате нито една от паролите си, препоръчвам да разгледате това.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изберете брой / дубликати

  2. Използване на изгледи на MySQL

  3. Свържете успешно клиента с MySQL сървър

  4. Как да защитя конфигурационния файл на базата данни в проекта?

  5. постоянен начин за правене на mysqli->set_charset()?