1. 程式人生 > >T-SQL 第十四章上機連線資料庫

T-SQL 第十四章上機連線資料庫

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;//SQL SEVER .NET 資料程式提供程式名稱空間

namespace ConsoleApplication1
{
    class Program
    {
        private const string strconn = @"Data Source=.;Initial Catalog=MySchool;
                        Integrated Security=True";
        static void Main(string[] args)
        {
            
            Program p = new Program();
            p.delu();
           
            //string name = "admin"; //為宣告專案可以不用特意宣告他
            //string pwd = "0";     //為宣告專案可以不用特意宣告他
            //Console.WriteLine("請輸入賬號:");
            //string a = Console.ReadLine();
            //Console.WriteLine("請輸入密碼:");
            //string C = Console.ReadLine();
            //string Msg = " ";
       
            //bool b = p.chech(a, C, ref Msg);
            //if (b)
            //{
            //    p.show();
            //    Console.WriteLine(Msg);


            //}
            //else
            //{
            //    Console.WriteLine("你登陸失敗!!!");
            //}
        
//////////////////////////////////////////////////////////////////////////////////////

        }
        public bool chech(string name,string pwd,ref string Msg) 
        {
            SqlConnection conn = new SqlConnection(strconn);//區域性變數
            try
            {
               // SqlConnection conn = new SqlConnection(strconn);成員變數
                conn.Open();
                string str = @"SELECT COUNT(*) FROM [MySchool].[dbo].[Admin]
                        where LoginId='" + name + "'and LoginPwd='" + pwd + "'";
                Console.WriteLine(str);
                SqlCommand comm = new SqlCommand(str, conn);
                int o = (int)comm.ExecuteScalar(); //強制轉換為 int 型別
                if (o > 0)
                {
                    Msg = "登陸成功";//引用傳參 可以不寫
                    return true;
                }
                Console.WriteLine(o);
            }
            catch (Exception ex)
            {

                Console.WriteLine("出現異常" + ex.Message);
             
            }
            finally 
            {
                conn.Close();  
            }
                
            return false;
        }
        public bool delu() ////登陸賬戶和密碼
        {
            Console.WriteLine("請輸入賬號:");
            string a = Console.ReadLine();
            Console.WriteLine("請輸入密碼:");
            string C = Console.ReadLine();
            string Msg = " ";

            bool b = chech(a, C, ref Msg);
            if (b)
            {
               show();
                Console.WriteLine(Msg);
                return true;


            }
            else
            {
                Console.WriteLine("你登陸失敗!!!");
                Console.WriteLine("請重新輸入");
                return false;
            }


        }
        public void show() /////建立一個選單//////////////////////
        {
            do
            {
                Console.WriteLine("=======請選擇操作鍵======");
                Console.WriteLine("1. 統計學生人數");
                Console.WriteLine("2. 檢視學生名單");
                Console.WriteLine("3. 按學號查詢學生姓名");
                Console.WriteLine("4. 按姓名查詢學生資訊");
                Console.WriteLine("5. 修改學生出生日期");
                Console.WriteLine("6. 刪除學生記錄");
                Console.WriteLine("0. 退出");
                Console.WriteLine("=========================");
                Console.WriteLine("請選擇:");
                int num = int.Parse(Console.ReadLine());
                switch (num)
                {
                    case 1:
                        show1();
                        continue;
                    case 2:
                      
                        continue;
                    case 3:
                     
                        continue; ;
                    case 4:
                       
                        continue;
                    case 5:
                        
                        continue;
                    case 6:
                        
                        continue;
                    case 0:
                      
                        break;
                    default:
                        Console.WriteLine("輸入錯誤");
                        continue;
                }
                break;
            } while (true);


        }
        public void show1() /////查詢學生人數////////////////
        {
            SqlConnection conn = new SqlConnection(strconn);
            try
            {
                string str = "select count(*) from Student";
                conn.Open();
                SqlCommand comm = new SqlCommand(str, conn);
                int i = (int)comm.ExecuteScalar();
                Console.WriteLine("學生總人數為:" + i);

            }
            catch (Exception)
            {

                Console.WriteLine("出現異常");
            }
            finally 
            {
                conn.Close();
            }

        }
    }
}

相關推薦

T-SQL 上機連線資料庫

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.Sql

上機練習1

//上機練習1 import java.util.Scanner; public class Qing4 { String[] names = new String[10]; public void addName(String name) { for (int

C# 上機1-5

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.Sql

ACCP S1 C# 上機練習

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.Sql

Java(

class 小寫字母 圓點 對象 文件夾 頂級域名 前綴 部分 不同 第十四章 1、Java中的包(package) 2.1 包,對應到磁盤中的文件夾 2.2 新建一個class,默認保存在缺省包中 2.3

springboot + profile(不同環境讀取不同配置)

img ont 代碼執行 ring stp uri div () rim 具體做法: 不同環境的配置設置一個配置文件,例如:dev環境下的配置配置在application-dev.properties中;prod環境下的配置配置在application-prod.

算法導論讀書筆記--數據結構的擴張

步驟 檢驗 int 由於 旋轉 著色 推出 log 14.3 算法導論第14章 數據結構的擴張 一些工程應用需要的只是標準數據結構, 但也有許多其他的應用需要對現有數據結構進行少許的創新和改造, 但是只在很少情況下需要創造出全新類型的數據結構, 更經常的是通過存儲額外信息的

學習筆記 使用CSS3動畫

進行 delay 簡單的 angle 新版 chrome tor 3.0 :focus 第14章 使用CSS3動畫 【學習重點】 設計2D動畫 設計3D動畫 設計過渡動畫 設計幀動畫 能夠使用CSS3動畫功能設計頁面特效樣式 14.1 設計2D動畫 CSS2D T

JAVA-初步認識--多線程-wait和sleep的區別

分享圖片 thread long img wait方法 object 安全 截圖 也會 一. wait和sleep的方法有些類似,我們現在要對其進行描述,區分它們。 wait方法在object類中,而且有兩種形式,分別是wait()和wait(long timeout),我

JAVA-初步認識--多線程-停止線程方式-定義標記

凍結 als 大小 span clas thread 結果 gpo http 一. 線程既然開啟了,運行了,凍結又恢復運行了,那什麽時候消亡呢? 怎麽來停止線程呢?不能一直在運行。 線程怎麽停,線程自己最清楚。在Thread類中,提供了stop方法, 本來線程持有一個鎖,

JAVA-初步認識--多線程-停止線程方式-interrupt

拋出異常 處理 不下來 停止線程 一個 表現 執行 技術分享 mage 一. 結合上一節繼續講述,不要以為設置了標記線程就能停止,依舊有停不下來的情況。 整個函數就是添加了wait()方法,導致try-catch的加入。 DOS結果顯示,程序沒有停下來,和主線程結束了

NFS搭建與配置

linux14.1 NFS介紹NFS是Network File System的縮寫NFS最早由Sun公司開發,分2,3,4三個版本,2和3由Sun起草開發,4.0開始Netapp公司參與並主導開發,最新為4.1版本NFS數據傳輸基於RPC協議,RPC為Remote Procedure Call的簡寫。NFS

擴展IP訪問控制列表配置

ACL 實驗 CCNA IP訪問控制列表 一、實驗名稱 擴展IP訪問控制列表配置 二、實驗內容 1.新建 Packet Tracer 拓撲圖。2.路由器R1與路由器R2通過 V.35 電纜串口連接,DCE 端連接在 R2 上, 配置其時鐘頻率 64000;主機與路由器通過交叉線連接。3.配置P

java基礎 (Servlet聲明周期、Servlet向jsp中提供數據、Servlet跳轉jsp、jsp中書寫java代碼)

表達式 hello java代碼 cati 地址 生命周期 tdi getattr cat 一、Servlet聲明周期 1.Servlet的聲明周期一般分為四步:加載、實例化、服務、銷毀。 2.實例化在整個生命周期中只執行一次。 二、jsp 1.Se

Python編程:從入門到實踐——【作業】——(記分)

wid ont elif pac rom ext splay 添加 能夠 第十四章 14-1 按P開始新遊戲 : 鑒於遊戲《外星人入侵》 使用鍵盤來控制飛船, 最好讓玩家也能夠通過按鍵來開始遊戲。 請添加讓玩家在按P時開始遊戲的代碼。 也許這樣做會有所幫助: 將check_

構建自定義的同步工具

循環 信號 滿足 一段 定義 減少 我們 bject 再次 14.1 狀態依賴性管理    基於先檢查後執行的狀態依賴性操作在多線程下常常發生一些我們不希望的結果.因此有必要對狀態依賴操作進行管理, 構成前提條件的狀態變量必須有對象的鎖來保護,從而使他們在測試前提條

[隨筆][Java][讀書筆記][thinking in java][ 類型信息]

found 構造 att main 數組 test 第一個 eating urn 主要理解如何在運行時獲取類型信息。主要有兩種方式:一是RTTI,假定我們在編譯時已經知道了所有的類型;二是反射機制,允許在運行時發現和使用類的信息。 14.1 為什麽需要RTTI 一個多

Linux就該這麽學 20181010(DHCP)

網關 搜索 lin none 作用 offset 而在 class 設備 參考鏈接:https://www.linuxprobe.com DHCP動態地址分配協議 作用域:定義一個很大的網段地址池:真正為用戶去分配的地址地址池要小於等於作用域排除範圍:作用域-地址池租約-默

吳恩達機器學習()---無監督學習kmeans演算法

一、kmeans演算法 Kmeans演算法的流程: 1.根據我們要分的類別數,就是你要將資料分成幾類(k類),隨機初始化k個點(暫且稱為類別點) 2.計算每個資料點到k個類別點的距離,將其歸類到距離最近的那個類別點 3.計算每一類中包含的資料點的位置的平均值,比如,包含a(x1,y1

【練習題】--檔案(Think Python)

2.讀寫檔案   要寫入一個檔案,就必須要在開啟它的時候用『w』作為第二個引數(譯者注:w 就是 wirte 的意思了): >>> fout = open('output.txt', 'w') 如果檔案已經存在了,這樣用寫入的模式來開啟,會把舊的檔案都清