//GridView1控件的RowCommand事件
    protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "select")                          //如果单击的是“选修”按钮
        {
            int index = Convert.ToInt32(e.CommandArgument);     //取出选修课程所在的行索引       
            DataKey key = GridView1.DataKeys[index];            //创建DataKey集合接收该行的主键
            string CId = GridView1.DataKeys[index].Values[0].ToString().Trim();//取出课程编号主键值
           string TId = GridView1.DataKeys[index].Values[1].ToString().Trim();   //取出教师编号主键值
            string connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            string SqlStr = "insert  into SC(SId,CId,TId) values('" + Session["userName"].ToString() + "','" + CId + "','" + TId + "')";
            try
            {
                SqlConnection conn = new SqlConnection(connStr);//创建连接对象
                if (conn.State.ToString() == "Closed")          //如果连接关闭,打开连接
                    conn.Open();
                SqlCommand comm = new SqlCommand(SqlStr, conn);
                comm.ExecuteNonQuery();                         //执行插入选修课程
                comm.Dispose();
                if (conn.State.ToString() == "Open")            //如果连接打开,关闭连接
                    conn.Close();
            }
            catch (Exception ex)                                //异常处理
            {
                Response.Write("数据库错误,错误原因:" + ex.Message);
                Response.End();
            }
        }
    }这是我的代码,我点击选修时能重复往表添加记录,怎么才能禁止只添加一项呢,添加的那个表3个列项都是其他表的主键,那个表无主键,请问各位大虾我改如何办??