数据库的那些事

简介: 数据库的那些事

想要学好数据库首先必须掌握以下几个概念

数据库是按照数据结构来组织、存储和管理数据的建立在计算机存储设备上的仓库。


数据:数据是数据库存储的基本对象,是描述现实世界中各种具体事物的抽象概念的、可存储并具有明确意义的符号记录。


数据库管理系统:数据库管理系统是数据库的核心部分,是位于数据库和操作系统之间的一层数据库管理软件,它为用户或者应用程序提供访问数据库的方法,包括数据库定义、建立、查询、更新以及各种数据控制等。。。。。。

数据的抽象过程:image.png


数据库的三要素:数据结构、数据操作、数据的完整性约束


数据模型的数据结构:

**1)**关系:一个关系就是一张规范的二维表

**2)**原则:表中的一行即为一个元组,又称为记录

**3)**属性:表中的一列即为一个属性,又称为字段

**4)**码(Key):码称为关键字或关键码


了解了上面的内容,下面我们来了解一下数据库的基本语句。

**

在这先说一句,只有数据库语言不区分大小写,其他语言基本上都区分大小写。


数据库创建与删除:

**

1.1、创建conpy数据库

create database conpy;

1.2、 选择数据库
use 数据库名;


1.2.1、选择数据库 conpy

use conpy;

1.3、删除数据库conpy

drop database conpy;

基本表的定义、删除和修改

2.1、创建表 work

create table work(
  code decimal,
  name varchar,
  price decimal,
);

括号里的是对应的属性和属性的格式(有char、varchar、decimal、int等等)


2.2、创建表并设置约束和默认值

create table dept_c(
  id int auto_increment primary key,
  ordno decimal,
  s_code decimal,
  c_code decimal,
  ordate datetime default current_timestamp,
  price decimal(8,2)
)

将id列设置为自增类型字段,默认自增为一,自增加一。同时ordate类似于创建一个表的副本。


2.3、利用子查询来创建表

create table conpy select * from dept;

利用select查询dept的所有属性和值来创建表conpy,类似于对表内容进行备份。


2.4、修改表的结构

修改表结构,简而言之就是对表中的列进行增加、删除和修改


2.4.1、dept_c中增加一个新的列telephone

alter table dept_c add telephone varchar(11);

2.4.2、对dept_c中的telephone列进行修改,类型不变,长度改为13,默认值为1-1011

alter table dept_c modify telephone varchar(13) default '1-1011';

2.4.3、从一个特定表中删除特定的列

alter table dept_c drop telephone;

注意alter table语句一下子只能删除一句,且删除的语句无法还原


2.5、截断表和删除表

2.5.1、截断表 (一下子删除不需要的表)

truncate table dept_c;

2.5.2、删除表

drop table dept_c;

数据查询

3、基本查询

3.1、查询表中的全部数据

select * from dept;

desc表示按“表排序字段名”倒序显示,不加desc,表示正序显示

在这里提个问题:例如,表中有一列数据是数字型的(int型),数据库中一般默认升序,如果要查询表中数据按照降序排列因该怎么办?答:这时候可以引入order by desc,默认的排序是升序的,添加desc就变成j降序了。

select * from dept order by detpno desc ename;

查询所有数据按照emp那一列数据顺序输出


3.2、查询指定的列


查询dept表中的部门编号deptno和部门名称dname信息


select deptno,dname from dept;

3.3、去除重复的行


当提取到所需要的列的时候遇到重复的行怎么办呢,这时候就要引入distinct来去除重复的行了


查询dept表中的部门编号deptno和部门名称dname信息并去除重复的行


select distinct deptno,dname from dept;

3.4、为名字太长的列起别名 as


select empno as 编号,dname as 姓名 from emp;

将emp表中的empno列起名为编号,dname列起名为姓名。从起名可以很好的学习数据库,对英语不好的人很友好。


3.5、使用while子句指定查询条件3.5.1、通过国家名查询信息image.png

select * from emp where county="中国";

通过国家名,查询国家名为中国的 表中的全部信息。 在数据库中指全部属性(每一列就是一个属性)。*


3.5.2、and & or 查询


select * from emp where deptno ="10" and (sal >100 or job="开发工程师");

查询emp表中部门为10、工资高于100或岗位为 开发工程师 的所有员工的所有信息。


3.5.2、between…and 查询


select * from emp where sal between 1000 and 2000;

查询emp表中工资在1000到2000的所有人的所有信息


3.5.3、字符串模糊查询

like '所需查询的字符串'

注意:在使用通配符%、_ 时。%用于表示0个或者任意多个字符。_表示任意一个字符。

select * from emp whrer ename like 'K%' or ename '_C%';

查询姓名以K开头或姓名第二个字母为C的员工。


3.6、使用order by 子句对查询结果排序

select * from emp where sal between 1000 and 2000 order by deptno desc ename;

今天就先写到这吧


目录
相关文章
|
22天前
|
存储 关系型数据库 MySQL
数据库(一)
登录MySQL数据库的命令是`mysql -u用户名 -p密码`,其中`-u`后面接用户名,`-p`后面接密码。如果服务器不在本地,还需指定`-h`参数加上IP地址或域名,以及可选的`-P`参数指定端口号。创建数据库使用`create database 数据库名`,查看数据库用`show databases;`。数据类型包括整数类型(如int)、字符串(如char、varchar、text)、日期时间类型(如date、time、datetime)等。数据库操作还包括创建表、修改表结构、删除表以及数据的增删改查操作。数据恢复和备份涉及mysqldump工具及source命令来导入导出数据。
9 1
|
22天前
|
关系型数据库 MySQL 数据库
数据库(三)
数据完整性是数据库管理中的关键概念,确保数据的准确和一致。主要包括: 1. 实体完整性:通过主键(唯一且非空)来标识表中的每条记录,如创建`test2`表时设置`n1`为主键。 2. 创建表`test3`时,`n1`和`n2`组合成为主键,确保多字段的唯一性。 3. 唯一约束:用于保证列值的唯一性,如在`test1`中添加对`n2`的唯一约束,或创建`test4`时`n1`和`n2`的组合值唯一。 4. 引用完整性:通过外键约束实现,如`emp`表的`dept_id`引用`dept`表的`id`,确保数据间的关联合法性。外键可以有级联操作,如`on delete cascade`和`o
11 0
|
22天前
|
数据库
数据库(二)
数据查询教程包括单表查询操作,如Select语句用于选取属性,可指定列名、使用别名、计算表达式,并通过Distinct去除重复元组。条件查询(Where子句)支持比较运算,如Between、In、Like(支持模糊匹配)及空值判断。连接查询用于合并多表数据,如内连接、外连接和笛卡尔积。例如,通过连接emp和dept表,可获取员工姓名及其所在部门名称。
12 3
|
26天前
|
存储 数据挖掘 数据库
数据库是什么?为什么要使用它么?
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。它通常与数据库管理系统(DBMS)一起使用,用于创建、查询、更新和管理数据库中的数据。
27 0
|
1月前
|
Go 数据库
数据库的实现
数据库的实现
11 0
|
3月前
|
存储 SQL 关系型数据库
初识数据库
初识数据库
|
8月前
|
存储 SQL NoSQL
(一)数据库介绍
(一)数据库介绍
137 0
|
10月前
|
关系型数据库 MySQL 数据库
|
存储 NoSQL Oracle
2023,不一样的数据库
2022也是NineData技术团队创业完整的第一年,团队、产品和技术都突飞猛进,特别感谢所有支持我们的朋友(客户、老朋友、投资人和业务伙伴),也结识了很多创业的前辈,向各位学习。作为数据领域20年的从业者,曾负责过阿里云数据库产品的整体规划,经历了不一样的2022,想谈谈2023年可能会不一样的数据库。
283 0
2023,不一样的数据库

热门文章

最新文章