欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#連接SQL?Sever數(shù)據(jù)庫詳細圖文教程

 更新時間:2023年06月05日 11:35:15   作者:派大星啦啦啦  
C#是Microsoft公司為.NET Framework推出的重量級語言,和它搭配最完美的數(shù)據(jù)庫無疑就是Microsoft SQL Server了,下面這篇文章主要給大家介紹了關(guān)于C#連接SQL?Sever數(shù)據(jù)庫的詳細圖文教程,需要的朋友可以參考下

一丶Sql Sever數(shù)據(jù)庫

獲取服務(wù)器名,用戶名,密碼以及你要訪問的數(shù)據(jù)庫

二丶C#

1.新建一個項目(控制臺應(yīng)用)

2. 引入相關(guān)命名空間

using System.Data;  // 表的命名空間
using System.Data.SqlClient;    // 和SQL相關(guān)的命名空間

3.訪問數(shù)據(jù)庫

我的數(shù)據(jù)庫的信息:

服務(wù)器名:DESKTOP-56DN3HD

登錄名:Csharp

密碼:123456

數(shù)據(jù)庫名:LibraryManagementSystem

方法一

// 聲明一個SqlConnectionStringBuilder對象
SqlConnectionStringBuilder scsb = new SqlConnectionStringBuilder();
scsb.DataSource = "DESKTOP-56DN3HD";    // 設(shè)置數(shù)據(jù)源服務(wù)器
scsb.UserID = "Csharp";     // 設(shè)置用戶名
scsb.Password = "123456"; // 密碼
scsb.InitialCatalog = "LibraryManagementSystem"; // 設(shè)置要訪問的數(shù)據(jù)庫

方法二

"Data Source = (1); Database = (2); User Id = (3); Password = (4)"

(1)是數(shù)據(jù)源服務(wù)器

(2)是要訪問的數(shù)據(jù)庫 (Database改為Initial Catalog也可以)

(3)是用戶名

(4)是密碼

string ConStr = "Data Source = DESKTOP-56DN3HD; Database = LibraryManagementSystem;"
                + "User Id = Csharp; Password = 123456";

上面這種輸入用戶名和密碼的是使用了 SQL Server 身份驗證,如果要使用 windows 身份驗證,只需要將 “User Id = Csharp; Password = 123456” 改為 “Trusted_Connection = SSPI” 或 “Integrated Security = SSPI”

string ConnStr = "server = DESKTOP-56DN3HD; Database = LibraryManagementSystem;"
	+"Trusted_Connection = SSPI";

4.創(chuàng)建連接并打開數(shù)據(jù)庫

根據(jù)上面兩種方法不同創(chuàng)建連接的方法也不同

方法一

方法一的 scsb 由于不是string類型,所以需要使用ToString()方法

// 創(chuàng)建連接
SqlConnection SqlCon = new SqlConnection(scsb.ToString());
// 打開數(shù)據(jù)庫
SqlCon.Open();

方法二

方法二的 ConStr 可以直接作為參數(shù)傳進去

// 創(chuàng)建連接
SqlConnection SqlCon = new SqlConnection(ConStr);
// 打開數(shù)據(jù)庫
SqlCon.Open();

打開數(shù)據(jù)庫的時候注意需要捕捉異常

try
{
	sqlConnection.Open();
}
catch(Exception ex)
{
    Console.WriteLine(ex.Message);
}

5.執(zhí)行SQL查詢語句

// 1、創(chuàng)建要執(zhí)行的SQL查詢語句
string find = "SELECT * FROM Table_User WHERE ID = '" + str + "'";

// 2、創(chuàng)建用于執(zhí)行SQL查詢語句的對象
SqlCommand cmd = new SqlCommand(find,SqlCon);//創(chuàng)建執(zhí)行語句// 參數(shù)1:SQL語句字符串。參數(shù)2:已經(jīng)打開的數(shù)據(jù)庫

// 3、執(zhí)行對象的SQL查詢語句并接受結(jié)果
SqlDataReader dr = cmd.ExecuteReader();//執(zhí)行

// 4、讀取結(jié)果的數(shù)據(jù)
while(dr.Read())
            {
                Console.WriteLine("ID: " + dr["ID"].ToString());
                Console.WriteLine("name: " + dr["name"].ToString());
            }

三丶源碼

using System;
using System.Data;  // 表的命名空間
using System.Data.SqlClient;    // 和SQL相關(guān)的命名空間

namespace ConsoleApp1
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 方法一
            SqlConnectionStringBuilder scsb = new SqlConnectionStringBuilder();
            scsb.DataSource = "DESKTOP-56DN3HD";    // 設(shè)置數(shù)據(jù)源服務(wù)器
            scsb.UserID = "Csharp";     // 設(shè)置用戶名
            scsb.Password = "123456"; // 密碼
            scsb.InitialCatalog = "LibraryManagementSystem"; // 設(shè)置要訪問的數(shù)據(jù)庫

            // 方法二
            string ConStr = "Data Source = DESKTOP-56DN3HD; Database = LibraryManagementSystem;"
                + "User Id = Csharp; Password = 123456";

            // 創(chuàng)建連接
            SqlConnection SqlCon = new SqlConnection(scsb.ToString());
            // 打開數(shù)據(jù)庫
            SqlCon.Open();
            if(SqlCon.State == ConnectionState.Open)
            {
                Console.WriteLine("數(shù)據(jù)庫已打開");
            }

            Console.WriteLine("請輸入要查詢的編號");

            string str = Console.ReadLine();

            string find = "SELECT * FROM Table_User WHERE ID = '" + str + "'";
            //sql查詢語句
            
            SqlCommand cmd = new SqlCommand(find,SqlCon);//創(chuàng)建執(zhí)行語句

            SqlDataReader dr = cmd.ExecuteReader();//執(zhí)行

            while(dr.Read())
            {
                Console.WriteLine("ID: " + dr["ID"].ToString());
                Console.WriteLine("name: " + dr["name"].ToString());
            }

            // 關(guān)閉數(shù)據(jù)庫
            SqlCon.Close();
            if (SqlCon.State == ConnectionState.Closed)
            {
                Console.WriteLine("數(shù)據(jù)庫已關(guān)閉");
            }

            Console.ReadKey();
        }
    }
}

四丶常用語句

1、設(shè)置連接字符串

string sqlConnStr = "Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫名;User ID=用戶名;Password=密碼";//用戶密碼登錄
//或
string sqlConnStr = "Data Source=服務(wù)器名;Initial Catalog=數(shù)據(jù)庫名;Integrated Security=true;//主機用戶登錄 IntegratedSecurity這個字段表示是否使用用戶名密碼登錄

2、獲取數(shù)據(jù)庫連接

using System.Data.SqlClient;
SqlConnection sqlConnection = new SqlConnection(sqlConnStr);

3、打開數(shù)據(jù)庫連接

try
{
	sqlConnection.Open();
}
catch(Exception ex)
{
    Console.WriteLine(ex.Message);
}

打開數(shù)據(jù)庫的時候注意需要捕捉異常

4、進行SQL語句執(zhí)行

4.1、獲取count計數(shù)

string sql = "select 1";
SqlCommand cmd = new SqlCommand();//創(chuàng)建SQL語句處理對象
//或SqlCommand cmd = new SqlCommand(sql,sqlConnection);//構(gòu)造函數(shù)綁定
cmd.Connection = sqlConnection;//綁定連接
cmd.CommandText = sql;//綁定SQL語句
int count = (int)cmd.ExecuteScalar();

ExecuteScalar() : 作用是獲取返回表上的第一個單元格的數(shù)據(jù)

4.2、獲取多列數(shù)據(jù)ExecuteReader()

string sql = "select 1,2,3";
//省略綁定
SqlDataReader sqlDataReader = cmd.ExecuteReader();//數(shù)據(jù)對象
while (sqlDataReader.Read())//read方法 :前進到下一條記錄  并且是否有下一行記錄
{
    int a =(int)sqlDataReader[0];
    int a =(int)sqlDataReader[1];
    int a =(int) sqlDataReader[2];//索引從0開始,按單元格檢索
    // int a = sqlDataReader["字段名"];使用數(shù)據(jù)庫中的字段名同樣可以
}

ExecuteReader() : 執(zhí)行SQL 語句返回一個sqlDataReader傳遞數(shù)據(jù)

4.3、執(zhí)行增刪改操作ExecuteNonQuery()

string sql = delete from [數(shù)據(jù)庫];
//省略綁定步驟
int line = cmd.ExecuteNonQuery();//返回記錄更改的行數(shù)

5、關(guān)閉連接或者流

if (sqlDataReader != null)
{
    sqlDataReader.Close();
}
if (cmd != null)
{
    cmd.Dispose();
}
if (sqlConnection != null)
{
    sqlConnection.Close();
}

五丶常用SQL語句

1、增

insert into [表名](字段1,字段2···) values(值1,值2···);

2、刪

delete from [表名] where [條件]

3、改

update [表名] set 字段名 = 值 ,第二個修改 where [條件]

4、查

select * from [數(shù)據(jù)庫] where [字段名] = 值;

總結(jié)

到此這篇關(guān)于C#連接SQL Sever數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)C#連接SQLSever數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論