c# - 连接和查询 SQL Server Express 数据库的正确方法

标签 c# database console sql-server-express

我需要一个连接到 SQL Server Express 数据库的示例 C#(控制台应用程序)代码 并将一些变量插入表“laptops”

  • SQL Server Express 是@localhost
  • 用户名是数据库
  • 密码是testdatabase

正确的做法是什么?

最佳答案

基本 ADO.NET 101:

  • 建立连接
  • 设置一个命令来做某事
  • 执行该命令

第一步:建立连接

您需要知道数据库的连接字符串。查看http://www.connectionstrings.com 的例子。

在你的例子中,你说它是一个本地 SQL Server Express 实例 - 但不幸的是,你没有提到你的 database 叫什么......你的连接字符串将是这样的:

server=(local)\SQLEXPRESS;database=YourDatabaseName;user id=database;pwd=testdatabase

第二步:设置命令

您可以使用各种命令 - 选择数据、删除数据或插入数据。无论您做什么 - 我都建议始终使用参数化查询来避免 SQL 注入(inject)。

所以你的代码应该是这样的:

string connectionString = "server=(local)\SQLEXPRESS;database=YourDatabaseName;user id=database;pwd=testdatabase";

string insertStmt = "INSERT INTO dbo.Laptops(Name, Model, ScreenSize) " + 
                    "VALUES(@Name, @Model, @Screensize)";

using(SqlConnection conn = new SqlConnection(connectionString))
using(SqlCommand cmd = new SqlCommand(insertStmt, conn))
{
    // set up the command's parameters
    cmd.Parameters.Add("@Name", SqlDbType.VarChar, 100).Value = "ASUS SX30";
    cmd.Parameters.Add("@Model", SqlDbType.VarChar, 50).Value = "Ultralight";
    cmd.Parameters.Add("@Screensize", SqlDbType.Int).Value = 15;

    // open connection, execute command, close connection
    conn.Open();
    int result = cmd.ExecuteNonQuery();
    conn.Close();
}

关于c# - 连接和查询 SQL Server Express 数据库的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9348148/

相关文章:

sql - 如何使用seek pagination获取下一个数据集?

c# - 无需安装oracle客户端的oracle远程连接

mysql - 我是否在我的 SQL 语句中运行了太多子查询?

java - 如何像执行实际 Java 代码一样执行控制台或 GUI 输入?

c# - .NET v 5.0 缺少 Amazon S3 SelectObjectContent 支持?

c# - Lidgren 第二次创建服务器实例导致 System.Net.Sockets.SocketException

c# - 在 C# 点网应用程序中执行 jar 文件

java - Java System.out.println 的 PHP 等价物是什么

c# - 缓存局部 View Asp.net MVC 5

c# - 在 MVVM 模式中单击时更改按钮颜色