C#連接SQL server數(shù)據(jù)庫命令的基本步驟
建議配合使用:如何下載和安裝SQL server數(shù)據(jù)庫-CSDN博客
1. 引入必要的命名空間
若要連接 SQL Server 數(shù)據(jù)庫,需引入System.Data.SqlClient命名空間。
2. 構(gòu)建數(shù)據(jù)庫連接字符串
連接字符串包含數(shù)據(jù)庫服務(wù)器地址、數(shù)據(jù)庫名稱、認證方式等連接所需信息。
就是這張圖片的內(nèi)容,里面的連接字符串

下面是幾種常見的連接字符串示例:
示例 1:使用 Windows 身份驗證
string connectionString = "Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫名;Integrated Security=True";
示例 2:使用 SQL Server 身份驗證
要選擇混合驗證,不然無法使用SQL Server 身份驗證,根據(jù)自己的設(shè)置輸入

string connectionString = "Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫名;User ID=用戶名;Password=密碼";
3. 連接數(shù)據(jù)庫并執(zhí)行 SQL 命令
可以借助SqlConnection和SqlCommand對象來連接數(shù)據(jù)庫并執(zhí)行 SQL 命令。以下是一個完整的示例:
using System;
using System.Data.SqlClient;
?
class Program
{
static void Main()
{
// 定義連接字符串
string connectionString = "Data Source=localhost;Initial Catalog=Northwind;Integrated Security=True";
?
try
{
// 創(chuàng)建并打開數(shù)據(jù)庫連接
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
Console.WriteLine("數(shù)據(jù)庫連接成功!");
?
// 定義SQL查詢命令
string sql = "SELECT CustomerID, CompanyName FROM Customers";
?
// 創(chuàng)建SqlCommand對象
using (SqlCommand command = new SqlCommand(sql, connection))
{
// 執(zhí)行查詢并獲取數(shù)據(jù)讀取器
using (SqlDataReader reader = command.ExecuteReader())
{
// 讀取查詢結(jié)果
while (reader.Read())
{
Console.WriteLine($"客戶ID: {reader["CustomerID"]}, 公司名稱: {reader["CompanyName"]}");
}
}
?
// 執(zhí)行插入命令示例
string insertSql = "INSERT INTO Products (ProductName, UnitPrice) VALUES (@ProductName, @UnitPrice)";
using (SqlCommand insertCommand = new SqlCommand(insertSql, connection))
{
// 添加參數(shù)以防止SQL注入
insertCommand.Parameters.AddWithValue("@ProductName", "新產(chǎn)品");
insertCommand.Parameters.AddWithValue("@UnitPrice", 9.99);
?
// 執(zhí)行非查詢命令(如INSERT、UPDATE、DELETE)
int rowsAffected = insertCommand.ExecuteNonQuery();
Console.WriteLine($"插入了{rowsAffected}行數(shù)據(jù)。");
}
}
}
}
catch (Exception ex)
{
Console.WriteLine("數(shù)據(jù)庫操作出錯: " + ex.Message);
}
}
}4. 關(guān)鍵步驟說明
創(chuàng)建連接對象:通過
SqlConnection類創(chuàng)建數(shù)據(jù)庫連接對象,構(gòu)造函數(shù)的參數(shù)為連接字符串。打開連接:調(diào)用
Open()方法開啟數(shù)據(jù)庫連接,此操作應(yīng)包含在try-catch塊中,以便捕獲可能出現(xiàn)的異常。執(zhí)行命令:利用
SqlCommand類執(zhí)行 SQL 命令,可通過ExecuteReader()方法執(zhí)行查詢命令,獲取查詢結(jié)果;也可使用ExecuteNonQuery()方法執(zhí)行插入、更新、刪除等操作。關(guān)閉連接:使用
using語句能確保連接資源被正確釋放,無需手動調(diào)用Close()或Dispose()方法。
5. 其他注意事項
參數(shù)化查詢:在 SQL 命令中使用參數(shù)(如
@ParameterName),可以有效防止 SQL 注入攻擊。異常處理:數(shù)據(jù)庫操作可能會因為網(wǎng)絡(luò)問題、權(quán)限不足等原因失敗,所以必須進行異常處理。
連接池:.NET 會自動管理連接池,一般情況下無需手動配置。
到此這篇關(guān)于C#連接SQL server數(shù)據(jù)庫命令的基本步驟的文章就介紹到這了,更多相關(guān)C#連接SQL server數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
c#使用FreeSql生產(chǎn)環(huán)境時自動升級備份數(shù)據(jù)庫
使用FreeSql,包含所有的ORM數(shù)據(jù)庫,都會存在這樣的問題。在codefirst模式下,根據(jù)代碼自動更新數(shù)據(jù)庫,都建議不要在生產(chǎn)環(huán)境使用。因為容易丟失數(shù)據(jù),本文提供一種自動更新數(shù)據(jù)庫的解決的思路:在判斷需要升級時,才自動升級,同時升級前先備份數(shù)據(jù)庫2021-06-06
VS2019 找不到資產(chǎn)文件 “xxxx\obj\project.assets.json”運行NuGet包還原以生成此文
這篇文章主要介紹了VS2019 找不到資產(chǎn)文件 “xxxx\obj\project.assets.json”運行NuGet包還原以生成此文件,本文給大家分享解決方案,感興趣的朋友跟隨小編一起學習吧2020-08-08
Winform實現(xiàn)將網(wǎng)頁生成圖片的方法
這篇文章主要介紹了Winform實現(xiàn)將網(wǎng)頁生成圖片的方法,類似于一般瀏覽器自帶的網(wǎng)頁生成圖片的功能,需要的朋友可以參考下2014-09-09
C#使用iTextSharp設(shè)置PDF所有頁面背景圖功能實例
這篇文章主要介紹了C#使用iTextSharp設(shè)置PDF所有頁面背景圖功能,實例分析了C#使用iTextSharp設(shè)置PDF頁面背景圖的實現(xiàn)方法,具有一定參考借鑒價值,需要的朋友可以參考下2015-07-07
C#創(chuàng)建WCF服務(wù)控制臺應(yīng)用程序詳解
這篇文章主要為大家詳細介紹了C#創(chuàng)建WCF服務(wù)控制臺應(yīng)用程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
在Framework 4.0中:找出新增的方法與新增的類(二)
為什么動態(tài)加載程序集無法找出Framework 4.0 和Framwork2.0 新增的方法和類2013-05-05

