黑马程序员<.net学习笔记--数据库>

   ---------------------- ASP.Net+Android+IO开发S.Net培训、期待与您交流! ----------------------

           学习内容:数据库。

          数据库概述:1.DBMS(DataBase Management System,数据库管理系统)和数据库。平时谈到“数据库”可能有两种含义:MSSQLServer,Oracle等某种DBMS;存放一堆数据表的一个分类(Catalog).
                                 2. 不同品牌的DBMS有自己的不同的特点:MYSQL,MSSQLServer,DB2,Oracle,Access,Sybase等。对于开发
人员来讲,大同小异。
                                 3. 除了Access,SQLServerCE等文件型数据库之外,大部分数据库都是需要数据库服务器才能运行。学习,开发时是连接本机的数据库,上线运行时是数据库运行在单独的服务器。
           
         Catalog(分类)(又叫数据库DataBase,表空间TableSpace),不同类的数据应该放到不同的数据库中
                    1.便于对各个Catalog进行个性化管理。
                    2.避免命名冲突。
                    3.安全性高。
        主键(PrimaryKey)
             主键就是数据行的唯一标识。不会重复的列才能当主键。一个表可以没有主键,但是会非常难以处
理,因此没有特殊理由表都要设定主键。
             主键有两种选用策略:
                      业务主键
:业务主键是使用有业务意义的字段做主键,比如身份证号,银行账号等。
                      逻辑主键:使用没有任何业务意义的字段做主键,完全给程序看的,业务人员不会看的数
据。因为很难保证业务主键不会重复(身份证号重复),不会变化(账号升位),因此推荐用逻辑主键。
             主键的选择:
                  SqlServer中两种常用的主键数据类型:int(或bitint)+标识列(又成自动增长字段);
                   uniqueidentifier(又称Guid,UUID):Guid算法是一种可以产生唯一标示的高效算法,它使用网卡MAC, 地址不会重复,无论是同一个
计算机上还是不同的计算机。在公元3400年以前产生的GUID与任何其他产生过的GUID都不相同。SQLServer中生成GUID的函数newid(),.net中生成的Guid方法:Guid.NewGuid(),返回是Guid类型。
            各自的优缺点:
                 int自增字段
                        优点:
占用空间小,无需看法人员干预,易读。
                        缺点:效率低;数据导入导出不灵活。
                   Guid
                        优点:
效率高,数据导入导出方便;
                        缺点:占用空间大,不易读

      数据类型

                      1: Character 字符串:
                                       char(n)
        固定长度的字符串。最多 8,000 个字符。  
                                      varchar(n)      可变长度的字符串。最多 8,000 个字符。   
                                      varchar(max)   可变长度的字符串。最多 1,073,741,824 个字符。   
                                      text            可变长度的字符串。最多 2GB 字符数据。   
                       2: Unicode 字符串:
                                       nchar(n)
       固定长度的 Unicode 数据。最多 4,000 个字符。   
                                      nvarchar(n)     可变长度的 Unicode 数据。最多 4,000 个字符。   
                                       nvarchar(max)   可变长度的 Unicode 数据。最多 536,870,912 个字符。   
                                       ntext           可变长度的 Unicode 数据。最多 2GB 字符数据。 
                      3: Binary 类型:
                                      bit    
        允许 0、1 或 NULL   
                                     binary(n)      固定长度的二进制数据。最多 8,000 字节。   
                                    varbinary(n)    可变长度的二进制数据。最多 8,000 字节。   
                                     varbinary(max)  可变长度的二进制数据。最多 2GB 字节。   
                                     image           可变长度的二进制数据。最多 2GB。 
                     4: Number 类型:
                                     tinyint       1 字节  允许从 0 到 255 的所有数字。  
                                     smallint      2 字节  允许从 -32,768 到 32,767 的所有数字。  
                                     int           4 字节  允许从 -2,147,483,648 到 2,147,483,647 的所有数字。  
                                    bigint       8 字节  允许介于 -9,223,372,036,854,775,808 和 9,223,372,036,854,775,807 之间
的所有数字。
                                   decimal(p,s)  5-17 字节     固定精度和比例的数字。允许从 -10^38 +1 到 10^38 -1 之间的数字。p 参数指示可以存储的最大位数(小数点左侧和右侧)。p 必须是 1 到 38 之间的值。默认是 18。s 参数指示小数点右侧存储的最大位数。s 必须是 0 到 p 之间的值。默认是 0。
                                   numeric(p,s)  5-17 字节     固定精度和比例的数字。允许从 -10^38 +1 到 10^38 -1 之间的数字。p 
参数指示可以存储的最大位数(小数点左侧和右侧)。p 必须是 1 到 38 之间的值。默认是 18。s 参数指示小数点右侧存储的最大位数。s 必须是 0 到 p 之间的值。默认是 0。
                                    smallmoney    4 字节        介于 -214,748.3648 和 214,748.3647 之间的货币数据。  
                                    money        8 字节        介于 -922,337,203,685,477.5808 和 922,337,203,685,477.5807 之间
的货币数据。  
                                    float(n)     4 或 8 字节   从 -1.79E + 308 到 1.79E + 308 的浮动精度数字数据。参数 n 指示该字段保存 4 字节还是 8 字节。                                      float(24) 保存 4 字节,而 float(53) 保存 8 字节。n 的默认值是 53。  
                                    real         4 字节        从 -3.40E + 38 到 3.40E + 38 的浮动精度数字数据。  
                     5: Date 类型:
                                    datetime       8 字节      从 1753 年 1 月 1 日 到 9999 年 12 月 31 日,精度为 3.33 毫秒。 
                                    smalldatetime  4 字节      从 1900 年 1 月 1 日 到 2079 年 6 月 6 日,精度为 1 分钟。 
                                     date            3 字节。    从 0001 年 1 月 1 日 到 9999 年 12 月 31 日。  
                                     time            3-5 字节    仅存储时间。精度为 100 纳秒。 
                                     datetimeoffset  8-10 字节   datetime2 相同,外加时区偏移。  
                                     timestamp                   存储唯一的数字,每当创建或修改某行时,该数字会更新。timestamp 基
于内部时钟,不对应真实时间。每个表只能有一个 timestamp 变量。

            sql语句入门:
                      sql语句是DBMS"交谈"专用的语句,不同DBMS都认SQL语法。
                      sql语句中字符串用单引号。
                      sql语句是大小写不敏感的,不敏感指的是Sql关键字,字符串值还是大小写敏感的。
                      SQL主要分DDL(数据定义语言)和DML(数据操作语言)两类。Create Table,Drop table等属于DDL,Select,Insert等属于DML
         
            一些简单的SQL语句:
                           创建一个表

                                                   Create table UserTable
                                                     (
                                                          Id int identity(1,1) primary key,//自增长,主键
                                                          UserName nvarchar(100),//用户姓名.
                                                          UserAge int,//用户年龄
                                                          UserAddress nvarchar(100)//用户地址
                                                     )
                       插入一条数据:
                                                     INSERT INTO UserTable(UserName,UserAge,UserAddress) values('张三',22,'北京')
                      更新一条数据:
                                                      update UserTable set UserAge=23 where Id=1
                     删除一条数据:
                                                     Drop UserTable where Id=1
                     查询Id为“1”的数据
                                                     select * from UserTable where Id=1

          注意:
                 数据插入时,
insert语句可以省略表明后的列名,但是不推荐。如果插入的行中有些字段的值
不确定,那么Insert的时候不指定那些列即可。
                更新数据:语法: UPdate 表名 set 列名='值' where  条件语句
                 删除数据:语法:  Drop 表名 where 条件语句。

                           ---------------------- ASP.Net+Android+IO开发S.Net培训、期待与您交流! ----------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了小程序应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值