是否需要填充数据库内的所有表?

Cel*_*l-o 2 sql-server primary-key

在此处输入图片说明 现在,我创建了该表的上方,为了进行测试,我将给出 3 个文本框值,如下所示。

SqlCommand cmd = new SqlCommand
("Insert Into dbo.PrnInf(PrnName, PrnSurName, PrnEgn )     Values 
('"+txtPrnName.Text+", "+txtPrnSurName.Text+","+txtPrnEgn.Text+"')", conn);
cmd.ExecuteNonQuery(); 
Run Code Online (Sandbox Code Playgroud)

但是,我在“cmd.execute”中遇到错误。此外,我在主键上定义了主键和身份规范。故事的寓意,是否需要填充数据库中的所有表?

此致,

gbn*_*gbn 7

不良做法警告!

您需要分隔每个字符串。不是全部。

注意单引号在哪里:

("Insert Into dbo.PrnInf(PrnName, PrnSurName, PrnEgn )     Values 
('"+txtPrnName.Text+"', '"+txtPrnSurName.Text+"','"+txtPrnEgn.Text+"')", conn);
Run Code Online (Sandbox Code Playgroud)

但是,这可能会导致 SQL 注入。所以...

好习惯!

参数化您的查询

SqlCommand cmd = new SqlCommand
    ("Insert Into dbo.PrnInf(PrnName, PrnSurName, PrnEgn )     Values 
    (@PrnName, @PrnSurName, @PrnEgn)", conn);
cmd.Parameters.AddWithValue("@PrnName", txtPrnName.Text);
cmd.Parameters.AddWithValue("@PrnSurName", txtPrnSurName.Text);
cmd.Parameters.AddWithValue("@PrnEgn", txtPrnEgn.Text);
cmd.ExecuteNonQuery();
Run Code Online (Sandbox Code Playgroud)