복붙노트

[SQL] ADO.NET 매개 변수를 제공하는 방법

SQL

ADO.NET 매개 변수를 제공하는 방법

나는 DB 레코드를 추가하는 SQL 명령을 만들려고합니다. 나는 다음과 같은 코드를 시도했지만 제대로 동작하지 않습니다 :

SqlCommand comand = new SqlCommand("INSERT INTO Product_table Values(@Product_Name,@Product_Price,@Product_Profit,@p)", connect);
SqlParameter ppar = new SqlParameter();
ppar.ParameterName = "@Product_Name";
ppar.Value = textBox1.Text;
MessageBox.Show("Done");
comaand.Parameters.Add(ppar);

해결법

  1. ==============================

    1.당신이 .NET을 사용하는 것처럼 귀하의 경우에는, 그것은 보인다. 매개 변수를 사용하면 쉽게 같은과 같다 :

    당신이 .NET을 사용하는 것처럼 귀하의 경우에는, 그것은 보인다. 매개 변수를 사용하면 쉽게 같은과 같다 :

    씨#

     string sql = "SELECT empSalary from employee where salary = @salary";
     SqlConnection connection = new SqlConnection(/* connection info */);
     SqlCommand command = new SqlCommand(sql, connection);
    
     command.Parameters.AddWithValue("salary", txtSalary.Text);
    
  2. ==============================

    2.다음과 같은 것을 사용한다 :

    다음과 같은 것을 사용한다 :

    SqlCommand cmd = new SqlCommand("INSERT INTO Product_table Values(@Product_Name, @Product_Price, @Product_Profit, @p)", connect);
    cmd.Parameters.Add("@Product_Name", SqlDbType.NVarChar, ProductNameSizeHere).Value = txtProductName.Text;
    cmd.Parameters.Add("@Product_Price", SqlDbType.Int).Value = txtProductPrice.Text;
    cmd.Parameters.Add("@Product_Profit", SqlDbType.Int).Value = txtProductProfit.Text;
    cmd.Parameters.Add("@p", SqlDbType.NVarChar, PSizeHere).Value = txtP.Text;
    cmd.ExecuteNonQuery();
    

    @p 매개 변수를 가정하면 일부 NVARCHAR이다.

    AddWithValue을 사용하여 더 나은 피하고, 왜 여기 참조 : https://blogs.msmvps.com/jcoehoorn/blog/2014/05/12/can-we-stop-using-addwithvalue-already/

    값 자체 전에 (데이터베이스에 정의) https://www.w3schools.com/sql/sql_insert.asp에서와 같이 또한 INSERT SQL 문에 더 값의 이름을 제공

  3. ==============================

    3.나는이 유 유용하다고 생각

    나는이 유 유용하다고 생각

    SqlCommand command = new SqlCommand("inserting", con);
    command.CommandType = CommandType.StoredProcedure;
    command.Parameters.Add("@Firstname", SqlDbType.NVarChar).Value = TextBox1.Text;
    command.Parameters.Add("@Lastname", SqlDbType.NVarChar).Value = TextBox2.Text;
    command.ExecuteNonQuery();
    
  4. ==============================

    4.이 시도

    이 시도

    command.Parameters.AddWithValue("@parameter",yourValue);
    command.ExecuteNonQuery();
    

    난 당신이 command.executeNonQuery ()를 사용하는 것을 잊었다 의미;

  5. from https://stackoverflow.com/questions/31420045/how-to-give-ado-net-parameters by cc-by-sa and MIT license