السلام عليكم
جربت استخدم Code analizer لكى أعرف الثغرات الموجود وظهرت لى الرسالة التالية بعد فحص الكود ؟
اقتباسCA2100 Review SQL queries for security vulnerabilities The query string passed to 'SqlDataAdapter.New(String, SqlConnection)' in 'add_dep.btn_Add_Click(Object, EventArgs)' could contain the following variables 'Me.dep_nm_tx.Text'. If any of these variables could come from user input, consider using a stored procedure or a parameterized SQL query instead of building the query with string concatenations. Sayadla add_dep.vb 39
والكود الذى استخدمه هو التالى
' التأكد من إسم القسم غير مسجل
Dim cn As New SqlConnection(Con_STR)
Dim x As String
x = "select *from dep where dep_nm = '" & dep_nm_tx.Text & "'"
Dim sda As New SqlDataAdapter(x, cn)
Dim ds As New DataSet
sda.Fill(ds)
Dim dt As DataTable = ds.Tables(0)
If dt.Rows.Count > 0 Then
MessageBox.Show("هذا القسم مسجل من قبل بقاعدة البيانات", "خطأ", MessageBoxButtons.OK, MessageBoxIcon.Error)
dep_nm_tx.Focus()
Exit Sub
End Ifوالجزء الذى يقوم الكود اناليزر بالإشارة إليه فى الكود السابق
Dim sda As New SqlDataAdapter(x, cn)
هل من توضيح لذلك ؟ وما هى الحلول الممكنة لتفادى تلك الرسالة