System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(connstr);
        System.Data.SqlClient.SqlCommand SqlCmd = new System.Data.SqlClient.SqlCommand("select top 1 * From @qTabel ", conn);        SqlParameter para_Tabel = new SqlParameter("@qTabel", SqlDbType.NVarChar,255);
        para_Tabel.Value = Tabel;
        SqlCmd.Parameters.Add(para_Tabel);             conn.Open();为何提示  @qTabel 未定义呀, Tabel 是有参数的,各位大哥帮帮忙,急死人啊,一段时间没动.net 还真给搞傻了..

解决方案 »

  1.   

    select top 1 * From @qTabel From后面跟表名啊,@qTabel是什么意思……
      

  2.   

    表名不能用参数
      
    *****************************************************************************
    欢迎使用CSDN论坛专用阅读器 : CSDN Reader(附全部源代码) 最新版本:20070212http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
      

  3.   

    "select top 1 * From @qTabel "
      

  4.   

    SqlParameter是存储过程中的参数,不是.NET中的变量,你如果要把表名存储在变量中,应该是string tableName = "Table";
    string sqlString = "select top 1 * From " + tableName;
    System.Data.SqlClient.SqlCommand SqlCmd = new System.Data.SqlClient.SqlCommand(sqlString, conn);
      

  5.   

    不对吧,那安全不是有很大的问题喽除了存储过程,我也一直在用 sqlparameter 的呀,
      

  6.   

    这和安全有什么关系?
    你那个Select语句就是一个字符串,语法就是SqlCommand(string cmdText, SqlConnection connection)
    不知道你传一个SqlParameter如何能够执行