ADO.NET基礎學習

来源:https://www.cnblogs.com/zx3180/archive/2018/05/30/9112897.html
-Advertisement-
Play Games

(記錄下方便自己複習) 概念 簡單地理解為用來連接資料庫的類。 工作流程 ①Connection對象用來連接資料庫。 兩種連接方式:Windows身份驗證 / sqlserver驗證 ②command對象用來操作資料庫。(三個重要的方法:ExecuteNonQuery(),ExecuteReader ...


(記錄下方便自己複習)

概念

簡單地理解為用來連接資料庫的類。

工作流程

①Connection對象用來連接資料庫。

兩種連接方式:Windows身份驗證 / sqlserver驗證

 private void button1_Click(object sender, EventArgs e)
        {
                try
                {
                   
                    //string Str = "server=.;Initial catalog="db_PWMS";integrated security=SSPI";//windows身份驗證
                    string Str = "server=.;database="db_PWMS";uid=sa;pwd=***";//Sqlserver驗證
                    //聲明Str存儲連接資料庫的字元串。
                    //server=.。 伺服器名稱=等於本地 。
                    //Initial catalog="db_PWMS"   資料庫名=db_PWMS。
                    SqlConnection conn= new SqlConnection(Str);//聲明對象
                    conn.Open();//連接上
                    if (conn.State==ConnectionState.Open)//State屬性判斷打開與否
                    {
                        richTextBox1.Text = "已經打開";
                    }
                }
                catch
                {
                    MessageBox.Show("連接失敗");
                }

        }

 

②command對象用來操作資料庫。(三個重要的方法:ExecuteNonQuery(),ExecuteReader(),ExecuteScalar())

 

⑴以update(改數據)為例,用到ExecuteNonQuery()方法

 

 private void button2_Click(object sender, EventArgs e)
        {
                SqlConnection conn =new SqlConnection("server=.;Initial catalog=db_PWMS;integrated security=SSPI");
                conn.Open();//老規矩,先連接
            try
            {
                SqlCommand cmd = new SqlCommand();//實例操作項cmd
                cmd.Connection = conn;//操作conn這個資料庫
                cmd.CommandText = "update Table_1 set Prices =3333 where Origin ='國產'";//操作這樣一句SQL語句
                cmd.CommandType = CommandType.Text;//書上這麼寫的,不知道幹嘛的,以後知道了再說。去掉這句話也沒事。
                cmd.ExecuteNonQuery();//command對象重要的三個方法之一,執行增刪改查
                int i = Convert.ToInt32(cmd.ExecuteNonQuery());
                label2.Text = i + "條數據發生改動";
            }
            catch (Exception ex){ MessageBox.Show(ex.Message); }
        }

點擊事件(button2)

執行前資料庫

 

執行後

 ⑵以各種姿勢查數據ExecuteScalar()

此方法的聚合函數

  說明
AVG() 平均值
count() 有幾條數據
max() 最大值
min() 最小值
sum()

 

 

 

 

 

以count()和max()為例

 private void button3_Click(object sender, EventArgs e)
        {
conn = new SqlConnection("server=.;Initial catalog=db_PWMS;integrated security=SSPI");
            conn.Open();
try {
                string s1 = "select count (2) from Table_1";//表數量count()
                string s2 = "select max (Prices) from Table_1";//Prices最大值max()

                SqlCommand cmd = new SqlCommand(s1,conn);
                SqlCommand cmd1 = new SqlCommand(s2,conn);
                int i = Convert.ToInt32(cmd.ExecuteScalar());//對象轉int類型
                int j = Convert.ToInt32(cmd1.ExecuteScalar());

                label2.Text = i+"條數據";
                label1.Text = "最貴的" + j;
            }
            catch (Exception ex){ MessageBox.Show(ex.Message); }
        }

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 類的定義及使用 一,類的定義 二,記憶體分析 類是引用類型,創建時會申請分配記憶體 堆記憶體:保存每一個對象的屬性,需要new關鍵字才可以創建 棧記憶體:保存一塊堆記憶體的地址 1,當使用Book bk = new Book();時,記憶體情況如下: 為屬性賦值之後,如下 2.分步創建對象,實例化 Book m ...
  • 廢話不多說,上節說的是數據類型,本篇講講數據運算。 在算式“1+2”中,“1”和“2”被稱為操作數,“+”被稱為運算符 Python語言支持以下運算符 算術運算符 比較(關係)運算符 賦值運算符 邏輯運算符 位運算符 成員運算符 身份運算符 0x00. 算術運算符 以下假設變數a為10,變數b為20 ...
  • 這幾天項目用到水晶報表做報表列印,沒有前輩指導,都自己摸著石頭過河,真是痛並快樂著。其實水晶報表還是挺好用的,對初學者也並不難(我就是初學者)。昨天遇到一個問題:無效索引 ……開始以為是報表設置的問題,把另一個正常的報表複製一個副本,在副本上修改,還是不行。報表裡的SQL也能預覽數據,折騰了很久,把 ...
  • 今天,我們很高興可以發佈 ASP.NET Core 2.1.0!這是我們 .NET平臺下開源的、跨平臺的 Web 框架的最新版本,現在已準備好供生產使用。今天就[開始使用](https://www.microsoft.com/net/learn/apps/web/get-started) ASP.N... ...
  • 我們很高興可以發佈 .NET Core 2.1。這次更新包括對性能的改進,對運行時和工具的改進。還包含一種以 NuGet 包的形式部署工具的新方法。我們添加了一個名為 [`Span ...
  • 前言: 最近正好寫一個程式,需要操作剪切板 功能很簡單,只需要從剪切板內讀取字元串,然後清空剪切板,然後再把字元串導入剪切板 我想當然的使用我最拿手的C#來完成這項工作,原因無他,因為.Net框架封裝了能實現這種功能的方法 然後就有瞭如下代碼 1 string Temp = ""; 2 while ...
  • 記得之前使用VS2015打開老的MVC4項目,不能右鍵創建控制器和添加視圖,讓我非常不習慣!找遍了網路無果,最後只能回到VS2013,但我就是不喜歡用舊的VS,這是不是病。。。 1、將VS2017離線安裝包下載完整(離線下載方法參考:https://www.cnblogs.com/VAllen/p/ ...
  • C#有以下幾種數據類型:數據類型案例以及取值範圍:界面:選擇int時:選中long時:選中float時:選中double時:選中decimal時:選中string時:選中char時:選中Bool時:源代碼如下:using System;using System.Collections.Generic... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...