这是在登录时的一段代码,运行到sqlcomm1.ExecuteNonQuery()时,出现如下的错误提示:“无法将 NULL 值插入列 'EventID',表 'WorkerManget.dbo.SystemEvent';该列不允许空值。INSERT 失败。语句已终止。” 
SystemEvent是表名,只是想记录一下登录情况,然后将登录情况插入到SystemEvent中。 
为什么会出现上面的情况啊?怎么解决啊? 
private void btnOK_Click(object sender, EventArgs e) 
        { 
            string userName = string.Empty, password = string.Empty; 
            
            SqlCommand sqlcomm = new SqlCommand("select * from Worker where WorkerLogin='" +textBox1.Text + "'",da.link());// 
            
            SqlDataReader reader = sqlcomm.ExecuteReader(); 
            if(reader.Read())
            {            
               userName = reader.GetValue(2).ToString(); 
               password = reader.GetValue(3).ToString(); 
             }
            if (userName==textBox1.Text) 
            { 
                if (password==textBox2.Text) 
                { 
                    MessageBox.Show("用户名及密码正确。", "提示"); 
                    SqlCommand sqlcomm1 = new SqlCommand("insert SystemEvent" + "(EventDepict,EventHappenTime)" + 
                        "values(@EventDepict,@EventHappenTime)", da.link()); 
                    sqlcomm1.Parameters.AddWithValue("@EventDepict", "用户" + textBox1.Text + "登录"); 
                    sqlcomm1.Parameters.AddWithValue("@EventHappenTime", DateTime.Now.ToString()); 
                    sqlcomm1.ExecuteNonQuery(); 
                    this.Close(); 
                    FormSystemGuanli form = new FormSystemGuanli(); 
                    form.ShowDialog(); 
                } 
                else 
                { 
                    MessageBox.Show("密码错误!", "提示框", MessageBoxButtons.OK, MessageBoxIcon.Warning); 
                    textBox2.Text = ""; 
                } 
            } 
            else 
            { 
                MessageBox.Show("登录名错误!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); 
                textBox1.Text = ""; 
            } 
        }