Přechodné parametry: String SQL = "select count(*) z Zhuce kde uživatelské jméno=@username a pwd=@pwd a typ = @type"; SqlConnection conn = nový SqlConnection(Common.Context.SqlManager.CONN_STRING); Conn. Open();
SqlCommand cmd = nový SqlCommand(sql, conn); cmd.Parameters.Add("@username",SqlDbType.VarChar,30); cmd.Parameters.Add("@pwd",SqlDbType.VarChar,30); cmd.Parameters.Add("@type",SqlDbType.VarChar,10); cmd.Parameters["@username"]. Value = uživatelské jméno; cmd.Parameters["@pwd"]. Hodnota = pwd; cmd.Parameters["@type"]. Hodnota = síla. Text;
int count = Convert.ToInt32(cmd.ExecuteScalar());
Conn. Close();
Nejsem si jistý, jakou databázi používáš Tady je kousek kódu SQL-Server Nejdůležitější pro prevenci injekčních útoků není používat parametry splicingu, ale metody přiřazování parametrů. SqlConnection conn=...... SqlCommand comm = nový SqlCommand ("vyberte count (*)z tabulky1, kde jméno = @loginame a heslo = @loginpassword",conn); komunikace. Parameters.Add(new SqlParameter("@loginame",SqlDbType.NVarchar,20); komunikace. Parametry["@loginame"].value=TextBox1.Text; komunikace. Parameters.Add(new SqlParameter("@loginpassword",SqlDbType.NVarchar,20); komunikace. Parametry["@loginpassword"].value=TextBox2.Text; komunikace. Connection.Open(); int mark=(int)comm. ExecuteScalar()
//--mark用于标记 |