如何从C#连接到SQL数据库?

RCI*_*CIX 19 .net c# sql-server ado.net sql-server-express

我正在尝试为我的家庭网络编写本地程序管理和安装系统,我想我已经确定了技术:

  • C#/.NET/WPF为客户端
  • Lua用于安装脚本支持(通过LuaInterface)
  • SQL Server Express用于维护程序数据库

但是我不确定具体用于将C#连接到数据库的具体内容..NET框架中是否有内置的东西?如果您对我应该用于与所述数据库交互的内容有建议,则可以获得奖励积分.

mar*_*c_s 22

查看

我相信还有更多的东西 - 只需谷歌"ADO.NET"和"教程"......

更新:

如果要连接到本地SQL Server Express,并连接到"Northwind"数据库,并从"Customers"表中读取前5位客户,则必须执行以下操作:

string connectionString = "server=(local)\SQLExpress;database=Northwind;integrated Security=SSPI;";

using(SqlConnection _con = new SqlConnection(connectionString))
{
   string queryStatement = "SELECT TOP 5 * FROM dbo.Customers ORDER BY CustomerID";

   using(SqlCommand _cmd = new SqlCommand(queryStatement, _con))
   {
      DataTable customerTable = new DataTable("Top5Customers");

      SqlDataAdapter _dap = new SqlDataAdapter(_cmd);

      _con.Open();
      _dap.Fill(customerTable);
      _con.Close();

   }
}
Run Code Online (Sandbox Code Playgroud)

现在,您将拥有DataTable中Northwind数据库中的所有5个顶级客户,您可以检查它们,打印出来,操作它们 - 无论您想做什么.

这就是ADO.NET的实际应用!

至于连接字符串的详细信息 - 您可以使用哪些选项以及它应该是什么样的,请查看Connection Strings网站 - 它有大量的示例和解释.


rah*_*hul 18

的SqlConnection

对象就是这样做的.

例如:

SqlConnection conn = new SqlConnection(
    "Data Source=(local);Initial Catalog=Northwind;Integrated Security=SSPI"); 
Run Code Online (Sandbox Code Playgroud)

要么

SqlConnection conn = new SqlConnection(
"Data Source=DatabaseServer; Initial Catalog=Northwind; User ID=YourUserID; Password=YourPassword");

conn.Open(); // opens the database connection
Run Code Online (Sandbox Code Playgroud)

编辑:

做完所有的东西后,你必须关闭连接

conn.Close();
Run Code Online (Sandbox Code Playgroud)

数据源:标识服务器.可以是本地计算机,计算机域名或IP地址.

初始目录:数据库名称.

集成安全性:设置为SSPI以与用户的Windows登录连接

用户ID:SQL Server中配置的用户名.

密码:密码匹配SQL Server用户ID.

  • 从“没有评论的投票”接收者那里+1。这个答案没有什么不正确或无益的。 (2认同)
  • 大声笑。有点费力,但是现在有人应该进来并投票反对只是打开和关闭连接而实际上不做任何事情。只有在足够多的人想知道为什么哦,为什么之后才应该揭露真正的原因。 (2认同)