天天看點

VS2010(C#)連接配接SQL Server 2008并執行查詢操作

VS2010連接配接SQL Server 2008并執行查詢操作

先在SQL Server 2008中建一個Student資料庫,含有一個表student,4個字段,分别為姓名(varchar)學号(varchar)性别(varchar)年齡(int),并指定一個使用者登入該資料庫,使用者名為cam,密碼為123456,注意要修改cam使用者的權限

VS2010(C#)連接配接SQL Server 2008并執行查詢操作

建立控制台應用程式,連接配接資料庫,輸出student表中的所有字段,并執行插入删除操作

[csharp] view plaincopyprint?

  1. using System;  
  2. using System.Data;  
  3. using System.Data.SqlClient;  
  4. using System.Collections.Generic;  
  5. using System.Linq;  
  6. using System.Text;  
  7. namespace 連接配接資料庫  
  8. {  
  9.     class Program  
  10.     {  
  11.         public static int Insert(string name, string pwd,string sex,int age)  
  12.         {  
  13.             SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字  
  14.             conn.Open();  
  15.             string sql = "insert into student(姓名,學号,性别,年齡) values(@name,@pwd,@sex,@age)";  
  16.             SqlCommand cmd = new SqlCommand(sql, conn);  
  17.             SqlParameter parn1 = new SqlParameter("@name", name);  
  18.             cmd.Parameters.Add(parn1);  
  19.             SqlParameter parn2 = new SqlParameter("@pwd", pwd);  
  20.             cmd.Parameters.Add(parn2);  
  21.             SqlParameter parn3 = new SqlParameter("@sex", sex);  
  22.             cmd.Parameters.Add(parn3);  
  23.             SqlParameter parn4 = new SqlParameter("@age", age);  
  24.             cmd.Parameters.Add(parn4);  
  25.             int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示添加成功   
  26.             conn.Close();  
  27.             cmd.Dispose();  
  28.             return result;  
  29.         }  
  30.         public static int Update(string name)  
  31.         {  
  32.             SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字  
  33.             conn.Open();  
  34.             string sql = "delete from student where 姓名[email protected]";  
  35.             SqlCommand cmd = new SqlCommand(sql, conn);  
  36.             SqlParameter parn = new SqlParameter("@name",name);  
  37.             cmd.Parameters.Add(parn);  
  38.             int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示删除成功   
  39.             conn.Close();  
  40.             cmd.Dispose();  
  41.             return result;  
  42.         }  
  43.         static void Main(string[] args)  
  44.         {  
  45.             //指定Sql Server提供者的連接配接字元串   
  46.             string connString = "server=CAMBRIDGE-PC;database =Student;uid=cam;pwd=123456";  
  47.             //建立連接配接對象   
  48.             SqlConnection Sqlconn = new SqlConnection(connString);  
  49.             //打開連接配接   
  50.             Sqlconn.Open();  
  51.             //為上面的連接配接指定Command對象   
  52.             SqlCommand thiscommand = Sqlconn.CreateCommand();  
  53.             thiscommand.CommandText = "select 姓名,學号,性别,年齡 from student";  
  54.             //為指定的command對象執行DataReader   
  55.             SqlDataReader thisSqlDataReader = thiscommand.ExecuteReader();  
  56.             while (thisSqlDataReader.Read())  
  57.             {  
  58.                 Console.WriteLine("{0} {1} {2} {3}", thisSqlDataReader["姓名"], thisSqlDataReader["學号"], thisSqlDataReader["性别"], thisSqlDataReader["年齡"]);  
  59.             }  
  60.             //關閉讀取   
  61.             thisSqlDataReader.Close();  
  62.             int result = Insert("關羽", "E01014307", "男", 25);  
  63.             Console.WriteLine("影響的行數為:{0}", result);  
  64.             result = Update("關羽");  
  65.             Console.WriteLine("影響的行數為:{0}", result);  
  66.             //關閉連接配接   
  67.             Sqlconn.Close();  
  68.             Console.ReadLine();  
  69.         }  
  70.     }  
  71. }  
using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 連接配接資料庫
{
    class Program
    {
        public static int Insert(string name, string pwd,string sex,int age)
        {
            SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字
            conn.Open();
            string sql = "insert into student(姓名,學号,性别,年齡) values(@name,@pwd,@sex,@age)";
            SqlCommand cmd = new SqlCommand(sql, conn);
            SqlParameter parn1 = new SqlParameter("@name", name);
            cmd.Parameters.Add(parn1);
            SqlParameter parn2 = new SqlParameter("@pwd", pwd);
            cmd.Parameters.Add(parn2);
            SqlParameter parn3 = new SqlParameter("@sex", sex);
            cmd.Parameters.Add(parn3);
            SqlParameter parn4 = new SqlParameter("@age", age);
            cmd.Parameters.Add(parn4);
            int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示添加成功
            conn.Close();
            cmd.Dispose();
            return result;
        }
        public static int Update(string name)
        {
            SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字
            conn.Open();
            string sql = "delete from student where 姓名[email protected]";
            SqlCommand cmd = new SqlCommand(sql, conn);
            SqlParameter parn = new SqlParameter("@name",name);
            cmd.Parameters.Add(parn);
            int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示删除成功
            conn.Close();
            cmd.Dispose();
            return result;
        }
        static void Main(string[] args)
        {
            //指定Sql Server提供者的連接配接字元串
            string connString = "server=CAMBRIDGE-PC;database =Student;uid=cam;pwd=123456";
            //建立連接配接對象
            SqlConnection Sqlconn = new SqlConnection(connString);
            //打開連接配接
            Sqlconn.Open();
            //為上面的連接配接指定Command對象
            SqlCommand thiscommand = Sqlconn.CreateCommand();
            thiscommand.CommandText = "select 姓名,學号,性别,年齡 from student";
            //為指定的command對象執行DataReader
            SqlDataReader thisSqlDataReader = thiscommand.ExecuteReader();
            while (thisSqlDataReader.Read())
            {
                Console.WriteLine("{0} {1} {2} {3}", thisSqlDataReader["姓名"], thisSqlDataReader["學号"], thisSqlDataReader["性别"], thisSqlDataReader["年齡"]);
            }
            //關閉讀取
            thisSqlDataReader.Close();
            int result = Insert("關羽", "E01014307", "男", 25);
            Console.WriteLine("影響的行數為:{0}", result);
            result = Update("關羽");
            Console.WriteLine("影響的行數為:{0}", result);
            //關閉連接配接
            Sqlconn.Close();
            Console.ReadLine();
        }
    }
}
      
VS2010(C#)連接配接SQL Server 2008并執行查詢操作

建Windows窗體應用程式也可以,在Form窗體中拖一個DataGridView控件,插入一個學生的資訊,在DataGridView控件中顯示所有學生的資訊

[csharp] view plaincopyprint?

  1. using System;  
  2. using System.Collections.Generic;  
  3. using System.ComponentModel;  
  4. using System.Data;  
  5. using System.Data.SqlClient;  
  6. using System.Drawing;  
  7. using System.Linq;  
  8. using System.Text;  
  9. using System.Windows.Forms;  
  10. namespace cam  
  11. {  
  12.     public partial class Form1 : Form  
  13.     {  
  14.         public Form1()  
  15.         {  
  16.             InitializeComponent();  
  17.         }  
  18.         public static int Insert(string name, string pwd, string sex, int age)  
  19.         {  
  20.             SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字  
  21.             conn.Open();  
  22.             string sql = "insert into student(姓名,學号,性别,年齡) values(@name,@pwd,@sex,@age)";  
  23.             SqlCommand cmd = new SqlCommand(sql, conn);  
  24.             SqlParameter parn1 = new SqlParameter("@name", name);  
  25.             cmd.Parameters.Add(parn1);  
  26.             SqlParameter parn2 = new SqlParameter("@pwd", pwd);  
  27.             cmd.Parameters.Add(parn2);  
  28.             SqlParameter parn3 = new SqlParameter("@sex", sex);  
  29.             cmd.Parameters.Add(parn3);  
  30.             SqlParameter parn4 = new SqlParameter("@age", age);  
  31.             cmd.Parameters.Add(parn4);  
  32.             int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示添加成功   
  33.             conn.Close();  
  34.             cmd.Dispose();  
  35.             return result;  
  36.         }  
  37.         public static int Update(string name)  
  38.         {  
  39.             SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字  
  40.             conn.Open();  
  41.             string sql = "delete from student where 姓名[email protected]";  
  42.             SqlCommand cmd = new SqlCommand(sql, conn);  
  43.             SqlParameter parn = new SqlParameter("@name", name);  
  44.             cmd.Parameters.Add(parn);  
  45.             int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示删除成功   
  46.             conn.Close();  
  47.             cmd.Dispose();  
  48.             return result;  
  49.         }  
  50.         public DataTable sel()  
  51.         {  
  52.             SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字,如果你的SqlServer伺服器名稱後面不帶SQLEXPRESS,那麼Data Source=.   
  53.             conn.Open();  
  54.             string sql = "select * from student";  
  55.             SqlCommand cmd = new SqlCommand(sql, conn);  
  56.             SqlDataAdapter sda = new SqlDataAdapter(cmd);  
  57.             DataTable dt = new DataTable();  
  58.             sda.Fill(dt);  
  59.             conn.Close();  
  60.             cmd.Dispose();  
  61.             return dt;  
  62.         }   
  63.         private void Form1_Load(object sender, EventArgs e)  
  64.         {  
  65.             Insert("關羽", "E01014307", "男", 25);  
  66.             dataGridView1.DataSource = sel();  
  67.         }  
  68.     }  
  69. }  
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace cam
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public static int Insert(string name, string pwd, string sex, int age)
        {
            SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字
            conn.Open();
            string sql = "insert into student(姓名,學号,性别,年齡) values(@name,@pwd,@sex,@age)";
            SqlCommand cmd = new SqlCommand(sql, conn);
            SqlParameter parn1 = new SqlParameter("@name", name);
            cmd.Parameters.Add(parn1);
            SqlParameter parn2 = new SqlParameter("@pwd", pwd);
            cmd.Parameters.Add(parn2);
            SqlParameter parn3 = new SqlParameter("@sex", sex);
            cmd.Parameters.Add(parn3);
            SqlParameter parn4 = new SqlParameter("@age", age);
            cmd.Parameters.Add(parn4);
            int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示添加成功
            conn.Close();
            cmd.Dispose();
            return result;
        }
        public static int Update(string name)
        {
            SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字
            conn.Open();
            string sql = "delete from student where 姓名[email protected]";
            SqlCommand cmd = new SqlCommand(sql, conn);
            SqlParameter parn = new SqlParameter("@name", name);
            cmd.Parameters.Add(parn);
            int result = cmd.ExecuteNonQuery();//result接收受影響行數,也就是說result大于0的話表示删除成功
            conn.Close();
            cmd.Dispose();
            return result;
        }
        public DataTable sel()
        {
            SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Student;Integrated Security=True");//Initial Catalog後面跟你資料庫的名字,如果你的SqlServer伺服器名稱後面不帶SQLEXPRESS,那麼Data Source=.
            conn.Open();
            string sql = "select * from student";
            SqlCommand cmd = new SqlCommand(sql, conn);
            SqlDataAdapter sda = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable();
            sda.Fill(dt);
            conn.Close();
            cmd.Dispose();
            return dt;
        } 
        private void Form1_Load(object sender, EventArgs e)
        {
            Insert("關羽", "E01014307", "男", 25);
            dataGridView1.DataSource = sel();
        }
    }
}
      
VS2010(C#)連接配接SQL Server 2008并執行查詢操作