数据库入门

这篇博客介绍了数据库的基础知识,包括数据库的必要性、基本使用、数据库服务器与表的关系。详细讲解了如何创建、操纵数据库,以及数据库的增删改查操作,强调了CRUD操作。此外,还涉及数据类型、内置函数、复合查询、视图和Java的JDBC编程基础知识。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

重点需要掌握

  1. CURD操作
  2. 索引
  3. 事务
  4. 视图
    其他作为扩展
一、数据库基础
1. 什么是数据库

存储数据用文件就可以了,为什么要学习数据库呢?
因为文件保存数据有以下几个缺点:

  • 文件的安全性问题
  • 文件不利于数据查询和管理
  • 文件不利于存储海量数据
  • 文件在程序中控制不方便
    数据库的存储介质:
  • 磁盘
  • 内存
    为了解决文件存储缺点,专家们设计出更加有利于管理数据的东西----数据库
2. 基本使用

2.1 MySQL安装,
关于MySQL数据库安装,这里就不给出了,网上一搜就有详细步骤。
2.2 服务器,数据库,表的关系

  • 所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。

  • 为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。

  • 数据库服务器,数据库和表的关系如下:
    在这里插入图片描述
    2.3 进入MySQL
    在命令行中进入MySQL数据库
    对于windows,开始菜单-> 运行–>输入cmd,即可调出命令行界面。
    在命令行中进行如下命令的操作就可以进入到MySQL数据库中:

    mysql -h localhost -u root -p

  • -h :后面的是主机名,表示你要连接到哪台主机的数据库。

  • -u: 后面接的是用户名,MySQL默认的就是root

  • -p: 指定的是使用密码登陆数据库,如果密码为空,该参数可以省略。
    -h后面写了localhost,表示要登陆到当前主机的MySQL数据库

-h参数以及localhost可以省略

mysql -u root -p

但是,如果你真的要连接到远程主机的MySQL数据库的话,需要写-h参数,加上远程的IP地址

mysql -h  202.116.97.98 -u root -p 

对于本地数据库,-p后面可直接跟上密码

mysql -u root -p123456

2.4 使用案例

  • 查看已有的数据库
show databases;
  • 创建数据库
create database hello;
  • 使用数据库
use hello;
  • 创建数据表
create table student(
     id int,
     name varchar(32),
     gender varchar(2)
     );
  • 表中数据的中插入
 insert into student(id,name,gender)values(1,"张",'男');
 insert into student(id,name,gender)values(1,"王小",'女');
 insert into student(id,name,gender)values(1,"李梅",'女');
  • 查询表中的数据
select * from student;

在这里插入图片描述
2.4 SQL分类

  • DDL数据定义语言,用来维护存储数据的结构
    代表指令:create,drop,alter
  • DML数据操纵语言,用来对数据进行操作
    代表指令:insert,delete,updata
  • DCL数据控制语言,主要负责权限管理和事物
    代表指令:grant,revoke,commit
二、库的操作

1. 创建数据库
  • 创建名为db1的数据库
create database db1;

默认字符集utf-8,校验规则是:utf8_general_ci

  • 创建一个使用utf字符集,并带校对规则的db3数据库。
create detabase db3 charset=utf8  collate utf8_general_ci

查看数据库支持的字符集

show charset;;

查看数据库支持的字符集校验规则

show collation;
  • 不区分大小写
    创建一个数据库,校验规则使用utf8_general_ci[不区分大小写]
create database test1 collate utf8_general_ci;

  • 区分大小写
create database test2 collate utf8_bin;

2. 操纵数据库

2.1 查看数据库

show databases;

2.2 修改数据库
主要指修改数据库的字符集,校验规则
将mytest数据库字符集改成gbk

alter database mytest charset=gbk;

2.3 数据库的删除

drop database [IF EXISTS] db_name;
三、表的操作

获取数据库中所有表

show tables

1 . 创建表

create  table  users ( 
     id int,
     name varchar(20) comment '用户名',  
     password char(32) comment '密码是32位的md5值', 
     birthday date comment '生日'                     
) character set utf8 engine MyISAM;

2 . 查看表结构

desc 表名;

在这里插入图片描述
3. 修改表

  • 在student表添加两条记录
 insert into student values(4,"李四",'男');
  • 在student表中添加一个字段(在name后),用于保存图片路径
 alter table student add assets varchar(100) comment '图片路径' after name;

查看表

select * from student;

在这里插入图片描述

  • 修改name,将其长度改成60
alter table student modify name varchar(60);
  • 删除assets列
alter  table student drop assets;
  • 修改表名
    为classmates
alter table student rename to classmates;

to可以省掉

  • 将name列修改为xingming
alter table classmates change name xingming varchar(60);
</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值