有这么一条数据库语句,我不明白里面的参数这样写是什么意思,请教了
SqlCommand comm=new SqlCommand (strsql,conn);
comm.Parameters.Add(new SqlParameter("@SNO",SqlDbType.Int));
comm.Parameters["@SNO"].Value=ProductName.Text;
comm.Parameters.Add(new SqlParameter("@SName",SqlDbType.NVarChar,50));
comm.Parameters["@SName"].Value=Category.Text;我数据库里面的列名是学员和姓名,我不太明白@SNO和@SName在这里为什么这样用,还有Parameters的用法,谢谢了!

解决方案 »

  1.   

    SQL语句的参数,这样的sql语句应该是:
    insert into tablename(sno,sname) values(@sno,@sname)
      

  2.   

    对应的SQL参数
    create proce 存储过程名
    @sno varchar(),
    @sname varchar()
    as
    insert into tablename(sno,sname) values(@sno,@sname)
      

  3.   

    对应的SQL存储过程的参数
      

  4.   

    请问楼上的
    insert into tablename(sno,sname) values(@sno,@sname)中的@sno,@sname可以这样用吗?我没见过这种参数的,在数据库里面没有这个字段,它自己会对应的吗?
      

  5.   

    是你后面指定的值
    comm.Parameters["@SNO"].Value=ProductName.Text;
      

  6.   

    这个使用的传入参数的做法,现在2003中也支持基本sql语句这种写法,你查看msdn有详细的说明.
    这些基本的资料msdn里都有,麻烦你这些基本资料到帮助中找,比较快.而者很详细.
      

  7.   

    insert into tablename(sno,sname) values(@sno,@sname)中的@sno,@sname是你
    的参数 需要在后面指定参数的值
    comm.Parameters["@sno"].Value=????