zoukankan      html  css  js  c++  java
  • ADO.NET

    这段时间一直都在学习ADO。NET,快结束了,先慢慢总结一点吧。数据库:存储数据,起到一个持久化作用。
          数据:任何能够转换成电信号的东西都可以存储。
          数据库主要是由表组成。而这个表就是一张普通的二维表。分为行和列。
          行:代表的数据
          列:代表的是数据的类型。这所涉及的数据库employee首先我们先创建数据库

    CREATE DATABASE database_name
             demo:
             create database blog

    一、创建表:---demo
         create table employee
         (
      eid int,
      ename varchar(20),
      esex bit ,
      esalary float,
      etel varchar(11)
         )

     二、---插入数据

    1,insert into table_name(字段名) values(值)
    2,insert into table_name values(值)

    下面我们就创建一个数据库

    View Code
     1  1  create database blog
     2  2  use blog
     3  3  
     4  4  create table employee
     5  5  (
     6  6      eid int primary key identity,
     7  7      ename varchar(20) not null,
     8  8      esex bit default 1 not null,
     9  9      eage int not null,
    10 10      esalary int not null,
    11 11      eaddress varchar(20)
    12 12  )
    13 13  go
    14 14  insert into employee values ('孙悟空',default,23,5000,'花果山')
    15 15  insert into employee values ('猪八戒',default,40,3500,'高老庄')
    16 16  insert into employee values ('沙悟净',default,45,4000,'流沙河')
    17 17  insert into employee values ('唐僧',default,18,5000,'大唐')
    18 18  insert into employee values ('林冲',default,18,6000,'东京')
    19 19  insert into employee values ('孙二娘',0,33,4500,'黑店')
    20 20  insert into employee values ('武松',default,35,4600,'景阳冈')
    21 21  insert into employee values ('宋江',default,50,5000,'梁山')
    22 22  insert into employee values ('诸葛亮',default,23,5000,'卧龙岗')
    23 23  insert into employee values ('刘备',default,45,5500,'巴蜀')
    24 24  insert into employee values ('关羽',default,43,4000,'巴蜀')
    25 25  insert into employee values ('张飞',default,42,3500,'巴蜀')
    26 26  insert into employee values ('曹操',default,28,8000,'魏国')
    27 27  insert into employee values ('孙权',default,86,6000,'吴国')
    28 28  insert into employee values ('迎春',0,18,1200,'贾府')
    29 29  insert into employee values ('元春',0,19,1300,'贾府')
    30 30  insert into employee values ('探春',0,20,1400,'贾府')
    31 31  insert into employee values ('惜春',0,21,1500,'贾府')
    32 32  insert into employee values ('秋香',0,22,1600,'贾府')
    33 33  insert into employee values ('冬香',0,23,1700,'贾府')
    34 34  insert into employee values ('夏香',0,24,1800,'贾府')
    35 35  insert into employee values ('春香',0,25,1900,'贾府')
    36 36  insert into employee values ('贾宝玉',1,26,3000,'贾府')
    37 37  insert into employee values ('王熙凤',0,35,5000,'贾府')
    38 38  insert into employee values ('葫芦僧',default,5,800,'葫芦秒')
    39 39  insert into employee values ('林黛玉',0,18,3000,'贾府')
    40 40  insert into employee values ('聂小倩',0,23,4300,'坟墓')
    41 41  insert into employee values ('宁采臣',default,23,1500,'荒野')
    42 42  insert into employee values ('燕赤霞',default,56,5000,'道观')
    43 43  insert into employee values ('萧峰',default,45,8000,'大辽')
    44 44  insert into employee values ('段誉',default,26,8500,'大理')
    45 45  insert into employee values ('虚竹',default,34,4000,'缥缈峰')
    46 46  insert into employee values ('慕容复',default,35,5500,'燕子坞')

    那我们创建了数据库了,接下来就是对数据库的操作了,其实这也是重点啊。
    三、我们来练习一些基本语句

    查询语句:

     select * from employee

    修改语句:

    update employee set esalary = esalary + 100

    删除语句:

    delete from employee where eid>=7 and ename='李宗伟'但是要注意delete后不能跟*和其他字段。

    四、模糊查询
              like _:一个字符,%:零个或多个,
              1,查询出所有名字最后一个字为春的员工信息
              select * from employee where ename like '__'
              2,查询出名字中含有春的员工信息
                select * from employee where ename like '%春%'

    五、使用聚合函数来查询

     1,求所有员工的平均薪资
         select '平均工资'=avg(esalary) from employee

    2,求所有与员工的年薪
         select ename, '年薪'=esalary *12 from employee
          select '年薪'=sum(esalary *12) from employee

    其实这都比较简单了,我们都练的,另外枚举类型in
               在in这个指定集合中。
               select * from employee where dno in (1,2,3)

    六、连接查询
              1,表和表之间有"关系"
             
             --1,查询sid=4的学生信息和班级信息
             select * from student,class where sid = 4 and student.cid = class.cid

        连接查询
            select student.cid from student right join class on student.cid = class.cid

      分组练习

    统计每个部门男性和女性员工的人数
     select dno,sex, count(*) from employee group by dno,sex

    嗯这些都是基本语句我也不和大家多废话了,就算是我的笔记吧,先把基本的理清。

    SqlCommand对象
        这个对象是用来执行SQL语句的。
        1,构造函数
     SqlCommand()
     SqlCommand(sql sql)
     SqlCommand(strig sql,SqlConnection con)
        2,常用属性
           CommandText:设置要执行SQL语句
           CommandType:设置sql语句执行的方式
           Connection:设置SqlCommand对象的数据库连接
           Parameters:获取SqlParametersCollection集合
      --- SqlParametersCollection
          代表了CommandText中出现的参数的集合。
          集合中的元素是SqlParameter类型
          1,常用的方法
             Add(SqlParameter)
             Add(String,SqlDbType)
             Add(String,SqlDbType,Size)
             这个方法将会创建一个新的SqlParameter对象放进集合中,同时把这个SqlParameter对象返回出来。
          2,常用索引
             Item[int index]
             Item[String name]
             这两个索引将会返回指定位置或名字的SqlParameter对象

       

        3,常用方法
     1,ExecuteNonQuery():只能用来执行非查询语句,返回影响的行数。
     2,ExecuteReader():用来执行查询语句,返回SqlDataReader对象
       ---SqlDataReader
          SqlDataReader数据读取器,只能向下读,而起是只读数据,并且在读取数据的时候不能和数据库断开连接。
          当使用完毕后,记着释放资源。
          ---常用属性
          ---常用方法
        4,SqlParameter:代表了数据库中的参数
           构造函数
           SqlParameter()
           创建一个空的数据库变量对象,需要设置
           ParameterName:参数对象对应的数据库的变量名字
           SqlDbType:参数对象在数据库中的数据类型
           Size:数据类型的大小
           Value:变量的值。
           这些属性
           SqlPatameter(String,SqlDbType)
           如果参数不需要制定长度则使用这个构造函数
           SqlParameter(String,SqlDbType,Size)
           设置了参数的名称,类型,大小.

    下面我们就试着来把ADO.NET封装成数据库数据成C#对象就是我们要用的SQLDBHelper类...

  • 相关阅读:
    [RxJS] defer() lazy evaluation
    [React] as component prop
    [Compose] Compose exercises
    MAC开发NDK非常的简单
    Android之zip包换肤(极力推荐)
    Android之获取sdcard卡的信息
    Android之Volley使用
    Android之与当前连接的wifi进行文件夹的浏览与传输
    android之获得当前连接wifi的名字
    android之截屏(包括截取scrollview与listview的)
  • 原文地址:https://www.cnblogs.com/QLJ1314/p/2640772.html
Copyright © 2011-2022 走看看