SqlConnection con=new SqlConnection(str);
        SqlCommand cmd = new SqlCommand("InsInfoProc", con);
        //说明是个存储过程 
        cmd.CommandType = CommandType.StoredProcedure;
        //添加参数 
        cmd.Parameters.Add("@newsTitle",SqlDbType.VarChar,40).Value = newsTitle;
        cmd.Parameters.Add("@newsContent", SqlDbType.VarChar, 100).Value = newsContent;
        cmd.Parameters.Add("@newsType",SqlDbType.Int).Value = newsType;
        //打开数据库 
        con.Open(); 
没有报错,但也没有添加进sql server

解决方案 »

  1.   

    SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["SqlServer"].ToString());
    conn.Open();
    SqlCommand MyCommand = new SqlCommand("MYSQL", conn);
    MyCommand.CommandType = CommandType.StoredProcedure;
    MyCommand.Parameters.Add(new SqlParameter("@a", SqlDbType.Int));
    MyCommand.Parameters["@a"].Value = 20;
    MyCommand.Parameters.Add(new SqlParameter("@b", SqlDbType.Int));
    MyCommand.Parameters["@b"].Direction = ParameterDirection.Output;
    MyCommand.ExecuteNonQuery();
    Response.Write(MyCommand.Parameters["@b"].Value.ToString());如 sqlhelper中
    private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, SqlTransaction trans, string cmdText, SqlParameter[] cmdParms)   
    {   
    if (conn.State != ConnectionState.Open)   
    conn.Open();   
    cmd.Connection = conn;   
    cmd.CommandText = cmdText;   
    if (trans != null)   
    cmd.Transaction = trans;   
    cmd.CommandType = CommandType.Text;
    if (cmdParms != null)   
    {   
    foreach (SqlParameter parm in cmdParms)   
    cmd.Parameters.Add(parm);   
    }   
    ]
      

  2.   

    //建立连接
            SqlConnection con=new SqlConnection(str);
            //打开数据库 
            con.Open();
            SqlCommand cmd = new SqlCommand("InsInfoProc", con);
            //说明是个存储过程 
            cmd.CommandType = CommandType.StoredProcedure;
            //添加参数 
            cmd.Parameters.Add("@newsTitle",SqlDbType.VarChar,40).Value = newsTitle;
            cmd.Parameters.Add("@newsContent", SqlDbType.VarChar, 100).Value = newsContent;
            cmd.Parameters.Add("@newsType",SqlDbType.Int).Value = newsType;
            
            //开始执行
            cmd.ExecuteNonQuery();
            //关闭连接
            con.Close();
    这样可以了。还是谢谢回复的大虾
      

  3.   

    汗...
    ExecuteNonQuery这么重要的命令都忘了写ExecuteNonQuery  对连接执行 Transact-SQL 语句并返回受影响的行数。    
    ExecuteReader  将CommandText 发送到 Connection 并生成一个 SqlDataReader。 
    ExecuteScalar  执行查询,并返回查询所返回的结果集中第一行的第一列。忽略其他列或行。
      

  4.   

    ExecuteNonQuery();
    没有这个!!肯定不能执行存储过程了
      

  5.   

    SqlCommand cmd = new SqlCommand("InsInfoProc", con);//InsInfoProc存储过程名字
     
      cmd.CommandType = CommandType.StoredProcedure; //说明是调用存储过程  
     cmd.ExecuteNonQuery()