数据库(database)

本文详细介绍了数据库的发展历程,从手工管理到文件管理再到数据库管理,强调了数据库管理系统的优点。接着,重点讲解了关系型数据库,特别是MySQL的特点和安装过程,并列举了各种数据类型,包括数值、日期/时间和字符串。此外,文章还涵盖了SQL语言的基础,包括DML、DDL和DQL,以及事务控制和存储引擎。最后,讨论了数据库的约束、序列和视图的概念,以及索引的重要性和优化。
摘要由CSDN通过智能技术生成

一、数据库的发展史
   (1)手工管理:藏书阁,图书馆。
            优点:分类管理,直观性强
        缺点:信息流动慢,不方便
   (2)文件管理:计算机文件系统,图书管理系统
            优点:分类管理,层次分明
        缺点: 查找不方便
   (3)数据库管理:
            优点:存取数据非常方便.
        缺点:有数据的安全隐患。
二、数据库概念
    数据库(DataBase),简称DB,按照某一特定数据结构来组织,存储数据的仓库。
    数据库管理系统(DataBase Management System),简称DBMS.是为了建立,操作和维护数据库而设计的一个程序。介于用户和数据库之间。
     PS: 使用SQL语言,通过DBMS来管理DB。
三、关系型数据库
    (1)所谓的关系,指的就是表,或者表与表之间。关系模型,就是表的行与列。比如  教师(教师编号,姓名,年龄,性别,科目)。
    (2)常用的关系型数据库:
       大型:Oracle--甲骨文(Oracle)公司的产品
               SqlServer--Microsoft旗下的产品
               DB2--IBM旗下的产品
       小型:Access--MicroSoft旗下的产品
              Mysql--目前是甲骨文旗下的产品
四、Mysql
   1)Mysql是一个关系型数据库,最开始是瑞典的MysqlAB公司的产品,后来被Sun公司收购,在2009年4月20号Sun公司被Oracle收购.
   2)Mysql特点
      --mysql是开源的,不会产生额外的费用。
      --mysql支持大型数据库,比如可以管理上千万条记录的数据库。
      --mysql支持多操作系统,支持多语言连接:C,C++,java,PHP....
      --mysql成本比较小,相比较Oracle和DB2。
   3)Mysql的安装
       服务端的安装:DB和DBMS的安装
       客户端的安装:自带的客户端
                               第三方客户端
   4)Mysql的连接和使用
        连接方式:
    (1)使用命令提示符界面(保证环境变量配置成功)
      
      第一步:输入命令+参数,发送请求连接
      mysql -u username -p   回车
      enter password:  ......
      第二步:创建数据库
      create database bd1802 default character set utf8;
      第三步:选择数据库
      use  bd1802

         
    (2)使用客户端连接:(选择sqldeveloper).
       第一步:配置第三方jdbc驱动程序
          工具->首选项->数据库->第三方驱动程序->
          添加条目->选中你的jar包->确定
       第二步:新建连接

       连接名:随便起,就是一个连接昵称而已
       用户名:使用什么用户进行连接
       密码:.....
       主机名: 数据库所在的主机IP
       端口号:3306
       选择数据库:如 bd1802
五、表(Table)
   表是关系型数据库的基本存储结构。
   1)表是二维数据结构,有行和列
   2)行(Row)是横排数据,也叫记录(Recond)
   3)列(Column)是竖排数据,也叫字段(Field)
   4)行与列的交叉点是 字段值
   5)表与表之间也存在关系
六、数据库支持的数据类型
    MySQL支持多种类型,大致可以分为三类:
    数值、日期/时间和字符串(字符)类型。
    

数值类型:
    
类型      大小      范围(有符号)    用途
TINYINT      1 字节  (-128,127)        小整数值
SMALLINT  2 字节  (-32 768,32 767)    大整数值
MEDIUMINT 3 字节  (-8 388 608,8 388 607)    大整数值
INT或INTEGER    4 字节    (-2 147 483 648,2 147 483 647)    大整数值(常用)
BIGINT    8 字节    (-9 233 372 036 854 775 808,9 223 372 036 854 775 807)    极大整数值
FLOAT    4 字节    单精度浮点数值:不规定长度时,默认进行四舍五入,保留0或1位小数,
                                                   规定长度时:float(m,n):m表示数据的有效位数,n表示小数点后保留的位数。整数位:最大位数为m-n;
DOUBLE    8 字节    双精度浮点数值:规定长度写法: double(m,n):有效位数是m,小数点后保留n位。整数位:m-n
DECIMAL    对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2    依赖于M和D的值    依赖于M和D的值    小数值


日期和时间类型:
类型        大小(字节)     范围                                                        格式                            用途
DATE    3                    1000-01-01/9999-12-31                        YYYY-MM-DD            日期值
TIME    3                    不写年月日时,-838:59:59/838:59:59
                                写年月日时, -23:59:59/23:59:59         HH:MM:SS                时间值或持续时间
YEAR    1                    1901/2155                                            YYYY                        年份值
DATETIME 8    1000-01-01 00:00:00/9999-12-31 23:59:59    YYYY-MM-DD HH:MM:SS    混合日期和时间值
TIMESTAMP 8    1970-01-01 00:00:00/2038-1-18 23:59:59    YYYYMMDD HHMMSS    混合日期和时间值,时间戳

字符串类型:
类型            大小            用途
CHAR    0-255字节    定长字符串    char(10)【插入数据时,最多插入10个字节,如果插入的字节数不足10字节时,也占内存10字节大小】
VARCHAR    0-65535 字节    变长字符串【varchar(10):表示最多存储10个字节,如果不满足10个字节,在内存中按照实际字节数占用】
TINYBLOB 0-255字节    不超过 255 个字符的二进制字符串
TINYTEXT 0-255字节    短文本字符串
BLOB    0-65 535字节    二进制形式的长文本数据
TEXT    0-65 535字节    长文本数据
MEDIUMBLOB    0-16 777 215字节    二进制形式的中等长度文本数据
MEDIUMTEXT    0-16 777 215字节    中等长度文本数据
LOGNGBLOB    0-4 294 967 295字节    二进制形式的极大文本数据【极大字符串类型,存储的是字符对应的字节码】
LONGTEXT    0-4 294 967 295字节    极大文本数据【极大字符串类型,存储的是字符】


七、结构化查询语言(SQL)
    结构化查询语言(Structured Query Language),简称SQL,是数据库的标准查询语言。可以通过DBMS对数据库进行定义数据,操纵数据
    查询数据,数据控制等
    SQL可以分为:
    1)数据定义语言(DDL):Data dafinitaon Language
        create:创建表结构
        drop:  删除表
        alter: 修改表结构
        truncate: 清空表结构,即清空表数据,不能回滚。
        
        具体格式:创建数据库:create database databaseName default character set character
                         删除数据库:drop database databaseName;
                         建表语句:create table tableName(colName Type1,colName Type2......);
                         添加表字段语句(向表最后追加新字段):alter table tableName add (colName Type);
                         删除表字段语句:alter table tableName drop colName; 
                         修改表字段类型:alter table tableName modify colName newType;
                         修改表字段名称:alter table tableName change [column] oldColName newColName newType;
                         修改表名:alter table oldTableName rename [to] newTableName;
                         清空表结构(清空表里的数据 无法回收):truncate table tableName;
                         删除表结构,即删除表对象:drop table tableName
        
    2)数据操纵语言(DML):Data M.......   Language
        insert:向表中插入数据
        delete:删除表中的数据
        update:修改表中的数据
        
        具体格式:插入数据        格式1:insert into tableName values(value1,value2,...);必须按照建表字段顺序赋值
                                            格式2:insert into tableName(colName1,colName2,....) values(value1,value2,...);给指定字段赋值
                                            删除表中的数据:delete from tableName [where 条件]        
                                            where 条件:  对表中的数据加条件进行限制,起到过滤的作用。
                                                                格式:  where  colName 关系运算符 value [or|and 条件2]

                                                                关系运算符:     >,>=,<,<=,
                                                                                    等于:=,
                                                                                    不等于:!= 或 <>

                                            null值操作(value=null):
                                            1:在条件中,不能使用=或者!= 或者<>,而是使用is或者is not
                                            2:     在select子句中,使用关系运算符
       
                                            修改表中的数据: update tableName set colName1=value1[,colName2=value2] [where 条件]
         注:中括号表示可有可无                                    
                                            
    3)事务控制语言(TCL):Transation Control Language
               有时我们可能需要使用DML进行批量数据的删除,修改,增加。比如,在一个员工系统中,我们想删除一个人的信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值