C# SQL Server和连接到C时出现问题

C# SQL Server和连接到C时出现问题,c#,sql-server,C#,Sql Server,我是编程新手。我想让我的程序连接到C,但出现以下错误: System.Data.SqlClient.SqlException: '建立与SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 提供程序:命名管道提供程序,错误:40-无法打开到SQL Server的连接 我的代码: namespace HesabDarinAnbarDari { public partial class

我是编程新手。我想让我的程序连接到C,但出现以下错误:

System.Data.SqlClient.SqlException: '建立与SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 提供程序:命名管道提供程序,错误:40-无法打开到SQL Server的连接

我的代码:

namespace HesabDarinAnbarDari
{
   public partial class FrmTanzimat : Form
   {
      public FrmTanzimat()
      {
          InitializeComponent();
      }

      SqlConnection con = new SqlConnection("Data source=(local);initial catalog=HesabDariDB;integrated security=true");
      SqlCommand cmd = new SqlCommand();

      private void FrmTanzimat_Load(object sender, EventArgs e)
      {
      }

      private void btnSave_Click(object sender, EventArgs e)
      {
          cmd.Connection = con;
          cmd.Parameters.Clear();
          cmd.CommandText = "insert into Tanzimat (NameFroshqah, Tel, Mobile, Address. Tozih) values (@a, @b, @c, @d, @e)";

          cmd.Parameters.AddWithValue("@a", txtNameFroshgah.Text);
          cmd.Parameters.AddWithValue("@b", txtTel.Text);
          cmd.Parameters.AddWithValue("@c", txtMobile.Text);
          cmd.Parameters.AddWithValue("@d", txtAddress.Text);
          cmd.Parameters.AddWithValue("@e", txtTozih.Text);

          con.Open();
          cmd.ExecuteNonQuery();
          con.Close();
          MessageBox.Show("done");
      }
   }
}
SQL代码:

CREATE TABLE [dbo].[Tanzimat] 
(
    [idTanzimat]   INT           IDENTITY (1, 1) NOT NULL,
    [NameFroshgah] NVARCHAR(50)  NULL,
    [Tel]          NVARCHAR(50)  NULL,
    [Mobile]       NVARCHAR(50)  NULL,
    [Address]      NVARCHAR(MAX) NULL,
    [Tozih]        NVARCHAR(MAX) NULL,

    CONSTRAINT [PK_Tanzimat] PRIMARY KEY CLUSTERED ([idTanzimat] ASC)
);

当抛出此异常时,意味着C无法在本地找到数据源


在Sql server Management Studio中将本地名称替换为您的服务器名称。

错误表明您没有连接到Sql server,这表明您的连接字符串或服务器存在问题。如果您有一个SQL Server实例在本地运行,请尝试用localhost替换local,但请注意,一旦您尝试在其他计算机上运行代码,此连接字符串就会中断


如果不起作用,请转到服务器资源管理器窗格视图->服务器资源管理器。右键单击“数据连接”,然后选择“添加连接”。使用该向导查找您的服务器,然后单击测试连接以确保您可以正常运行。单击“确定”。现在在服务器资源管理器中,单击新的数据连接以将其选中,然后查看属性窗格。您将在那里看到连接字符串。您可以从那里复制并粘贴到代码中。

您可以通过其他方式连接到db吗?Sql server manager或类似工具?对于初学者,将连接字符串放在配置文件中,而不是在应用程序中硬编码。此代码是否与sql server在同一台计算机上运行?此外,您还可以帮自己一个忙,为参数指定有用的名称,而不是a、b、c。最后但并非最不重要的一点是,查看您的数据类型并适当地选择它们。您不需要nvarcharmax作为地址。我不知道地球上有哪个地址需要这么多字符。我的sql server名称是DESKTOP-AEJT71E\SQLEXPRESS。但我无法将其放入代码中。我也尝试过使用SQLEXPRESS,得到了相同的错误。为什么不能将其放入代码中?将DESKTOP-AEJT71E\\SQLEXPRESS“带两个反斜杠”放在您的数据源上我做了,但仍然存在相同的错误:。我使用System.Data.SqlClient。您是否正在尝试连接到另一台计算机上的sql server?您有4个字段和5个值,分别为Froshqah、Tel、Mobile、Address.Tozih Count=4和values@a,@b,@c,@d,@e Count=5感谢您在Tanzimat中插入姓名Froshqah、电话、手机、地址。Tozihvalues@a、@b、@c、@d、@e-您有5个参数,只有4个字段可以将这些值粘贴到其中。Address和Tozih之间的句点应该是逗号吗?换言之,换个地址。托齐换个地址,托齐非常感谢你,我没问题。祝你好运