本文主要是介绍数据库21/10/15,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
数据库基础
数据库介绍
1.数据库(DataBase):是长期存储在计算机内部有结构的大量的,的数据的集合
- 长期存储即持久存储,有结构指存储的数据有类型,有关系,共享指两个应用可以通过数据可实现数据共享
2.关系型数据库与非关系型数据库
- 关系型数据库
采用了关系模型来组织数据的存储,以行和列的形式存储数据并记录数据与数据之间的关系
- 非关系型数据库(NoSQL)
采用键值对的模型来存储数据,只完成数据的记录,基于其特定的存储结构来解决一些大数据应用的难题
3.常见的数据库产品
- 关系型数据库:MySQL,Postgre Server,Oracle,SQL Server,Access,Sybase,达梦数据库
- 非关系型数据库:
面向检索的列式存储(HaBase,GigTable)
面向高并发的缓存存储(Key Value)Redis,MemcacheDB
面向海量数据访问的文档存储 MongDB,CouchDB
4.数据库术语
- 数据库(Database):存储的数据的聚合
- 数据(Data):描述事物的符号记录
- 数据库管理系统(DBMS):是位于用户与操作系统之间的一层数据管理软件
- 数据库管理员(DBA):负责数据库创建,使用及维护的专门人员
- 数据库系统(DBS): 由数据库管理员,数据库操作系统以及数据库组成的整个单元
5.MySQL的管理工具
6.逻辑结构t
- navicat里可以有多个数据库,一个数据库里可以有多个表,一个表里可以有多个字段(列),数据就是存储在字段中的
- 存储在同一行的不同的数据成为一条记录(元组)
SQL
1.结构化查询语言,用于存储,查询,更新数据以及管理关系型数据库系统
2.SQL分类
- DDL:数据定义语言,完成对数据库对象(数据库,数据表,视图,索引等)的创建,删除,修改
- DML:数据操作语言,用于完成对数据表中的数据进行添加,删除,修改
- DQL: 数据查询语言,用于查询数据表中的数据
- DCL: 数据控制语言,用于完成事务管理等操作性操作
3.SQL基本语法
- 连接数据库:mysql -uroot -p密码;
查看数据库中所有的表:show tables;
查看表中的信息:describe 表名;
- 创建数据库:create database [if not exists] 数据库名
删除数据库:drop database
使用数据库:use 数据库名
查看所有数据库:show databases;
4.数据库的字段属性
- Unsigned:无符号的整数,声明后该列不能为负数
- zerofill:0填充,不足的位数用 0来填充
- 自增:自动在上一条记录的基础上加1,通常用来设置唯一的主键
DDL
数据库操作
- 查询数据库:show databases 显示当前mysql中的数据库列表
- 创建数据库:create database [if not exists] 数据库名
- 修改数据库:alter database 数据库名 character set gbk(修改为gbk)
- 删除数据库:drop database
- 使用数据库:use 数据库名
数据表操作
- 创建表:create table students(
stu_num char(9) not null unipue,
stu_name varchar(20) not null,
stu_age int(10) not null,
stu_qq varchar(11)
);
- int用于需要运算的情况,如年龄会增加
char用于不需要运算,不会改变并且每个对象的该数据都等长,如每个人的学号不会变,并且所有学生的学号都一样长
varchar用于不会改变,但是每个对象的数据都不等长,如姓名,qq
- 查询数据表:show tables
查询表结构:desc <表名>
删除数据表:drop table <表名>
- 修改表名: alter table <表名> rename to <new表名>
修改字符集:alter table 表名 character set utf-8
添加字段(列):alter table 表名 add 列 varchar(200)
修改字段的列名和类型:alter table change 字段名 新字段名 新类型
只修字段类型:alter table 表名 modify 列名 新类型
删除字段:alter table drop 表名
MySQL数据类型
- 数值:int float double decimal(字符串形式的浮点数)
- 字符串:char varchar(可变字符串)tinytext(微型文本)text(文本串)
- 时间日期:date(YYYY-MM-DD日期)time(HH:ss时间)datetime timestamp(时间戳)
字段约束
- 非空约束(not null):必填项
- 唯一约束(unique):唯一的值
- 主键约束(primary key):能够唯一标识数据表中的一条数据,不能为空,唯一
- 主键自动增长:int primary Key auto_increment
- 联合主键:将数据表中的多列组合在一起设置为表的主键,primary key 列名,列名
DML
插入数据
这篇关于数据库21/10/15的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!