1

実行時に SQL クエリ入力を指定する方法を教えてください。

元;

insert into table1 value('b','a');

実行時に入力する

a= inn
b= out
4

2 に答える 2

2
    cn = new SqlConnection("YourConnectionString");

    string sql = "INSERT INTO table1(columnName1, ColumnName2) VALUES (@columnName1, @ColumnName2)";

    cn.Open();
    SqlCommand cmd = new SqlCommand(sql, cn);

    cmd.Parameters.AddWithValue("@columnName1", textbox.text);
    cmd.Parameters.AddWithValue("@columnName2", textbox2.text);

    cmd.CommandType = CommandType.Text;
    cmd.ExecuteNonQuery();
    cn.Close();

お役に立てれば.....

編集-ストアドプロシージャの場合、これを行うことができます:

    USE [DatabaseName]
    GO
    /****** Object:  StoredProcedure [dbo].[DatabaseName]  ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE PROCEDURE [dbo].[storedProcName]

    @param1 varchar(50)
   ,@param2 varchar(50)

    AS

    BEGIN

    INSERT INTO [dbo].[tableName]
          ([ComunName1]
          ,[ComunName2]
    VALUES
          (
           @param1 
          ,@param2
          )

    END

コードでは、次のようにストアド プロシージャを呼び出すことができます。

    c#:
    cn = new SqlConnection("YourConnectionString");
    sql = "yourStoredProcName"; 
    command = new SqlCommand(sql, cn); 
    command.CommandType = CommandType.StoredProcedure; 
    command.Parameter.Add(new SqlParameter("@param1", SqlDbType.VarChar)).Value = textbox1.text; 
    command.Parameter.Add(new SqlParameter("@param2", SqlDbType.VarChar)).Value = textbox2.text; 
    connection.Open();  
    command.ExecuteNonQuery(); 
    connection.Close();

これがストアドプロシージャに役立つことを願っています.....

于 2013-09-20T07:57:39.440 に答える
1
    ide=input("enter the id")
    prod_name=input("enter the name")
    company_name=input("enter the company")
    insert into carz values('"+ide+"','"+prod_name+"','"+company_name+"')
于 2016-09-28T10:28:50.917 に答える