数据库day_01

5 篇文章 0 订阅
5 篇文章 0 订阅

数据库day_01

1.了解数据库:

什么是数据库?
存储数据的仓库.

2.常见的关系型数据库有哪些?

关系型数据库:已二维表格的形式存储数据.

mysql:被oracle收购,免费的,中小型公司使用.
oracle:Oracle公司,"甲骨文"-->神谕,收费.
DB2:IBM公司.
SQL server:微软.
sqlite:小型数据库,适用于移动端:手机.

3.DBMS

数据库管理系统==关系型数据库

4.table:表 database:数据库

一个database=一个或多个table.
一个table=表结构+表记录.
表结构:列名.
表记录:数据.

成绩表:姓名 , 技能分数 , 面试分数 , 结果
      张三     100       100      通过

5.登录数据库:

a.win+R 输入 cmd 运行
输入:mysql -uroot -p密码

如果失败:注意错误信息,mysql服务已经停止
C:\Users\tianh>mysql -uroot -proot
	ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

6.sql:结构化查询语言,处理数据的数据.

DDL:
    数据定义语言:创建数据库,表,修改和删除数据库以及构造

DML:
    数据操作语言:针对的是表记录 添加 删除 修改.
    
DQL:
    数据库查询语言:查询表记录.
    
DCL:
    数据控制语言,用户的创建,搜权.

7.数据定义语言:

操作数据库
a.查询所有的数据库:
    show databases;
    
b.创建数据库:
    create database 库名;
    
c.选择要使用的数据库:
    use 库名;
    
d.删除数据库:
    drop database 库名;


操作表:
a.创建数据表:
    学生:类     class{
        String name;
        int age;
        String sex;
        int id;
    }
    //char:固定长字符串 20 a:20
    //varchar:可变长字符串  20 a:1;
    //int:整数
    //double:浮点数
    //date:日期
    
    create table student(sid int(10),sname varchar(20),age int(10),sex char(4));
    
    b.查看表:
    
        show tables;
        
    c.查看表结构:
    
        desc 表名;
    
    修改表结构:
        alter table 表名
        添加一列:add
            alter table student add(birthday date);
        修改列类型:modify
            alter table student modify birthday varchar(20);
        修改列名:change
            alter table student chang sid id int(10);
        删除列:drop
            alter table student drop birthday;
        修改表名称:rename to
            alter table student rename to t_stu;
            
    删除表:
        drop table 表名;
        
DML:
    数据操作语言:针对的是表记录的添加,删除,修改
    
    添加:
        1.insert into 表名 values(值,值...);赋值的顺序和表结构顺序保持一致
        
        2.insert into 表名(列名,列名) values(值,值); 指定列赋值
        
        3.insert into 表名()/表名 values(),(),(),();
        
        '注意事项:'
            值和列的顺序以及个数保持一致
            一次台南佳多行数据,小括号之间使用逗号隔开,小括号的个数代表了添加的行数;
            
        select*from t_stu;//查看表中的所有数据
        
    修改:前缀update 表名 set 列名=值,列名=值 where 条件
        条件:
            >,<,>=,<=,<>(不等于),!=(不等于),=
            between and
            in
            and
            or
            is null
        1.将id=3的学生的年龄修改为18:
            update t_stu set age=18 where sid = 3;
        2.将sid是3-5之间的年龄修改为20;
            update t_stu set age=20 where sid >=3 and <=5;
            update t_stu set age = 20 where sid between 3 and 5;
            
        3.将年龄为18,19,31,54的学生的性别改为男:
            update t_stu set sex='男' where age = 18 or age=19 or age=31 or age=54;
            
        
        4.将id为null的学生的id设置为6;
            update t_stu set sid = 6 where sid is null;
            
        5.is not null
            update t_stu set age=23 where sex is not null;
            
    删除:前缀delete from 表名 where 条件
        a.删除所有delete from 表名; --> 可以恢复的: 事务管理,如果事务没有确认,数据就可以恢复;
        
        b.条件删除:
            1.删除张三:
                delete from t_stu where sname='张三';
            
            2.删除年龄在15-25之间的学生:
                delete from t_stu where age between 15 and 25;
                
            3.删除id为1,3,5,7的学生;
                delete from t_stu where sid in(1,3,5,7);
                
            4.删除性别为null的学生;
                delete from t_stu where sex is null;
            
            5.删除id不为null的学生:
                delete from t_stu where sid is not null;
    解决乱码问题:
        set names gbk;
        当添加中文时提示添加错误,编码格式
        数据库:utf-8
        cmd:gbk
        统一编码格式

整理:

关系型数据库:以表格的形式存储数据的数据库

数据库也被称为:DBMS

常见:mysql,oracle,DB2,sqlserver。。

Sql:结构化查询语言:数据库的官方语言
	数据库存在方言:

每个sql以;结尾的;
关键字不能被定义为名称;
建议关键字大写:忽略
	
DDL:
	数据定义语言:数据库和表结构的定义,创建,删除修改查看;
DML:
	数据操作语言:增加删除修改表记录
DQL:
	数据查询语言:查询表记录:条件查询,单表查询,多表查询,子查询
DCL:
	数据控制语言:用户的创建,授权
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值