数据库总结
传统记录数据的缺点:不易保存,备份困难,查找不便
数据库:存储数据的仓库,描述一个事务的基本信息
优点:1.持久化存储
2.读写速度极高
3.保证数据的有效性

RDBMS
relational database management system
军火当前主要使用两种类型的数据库:1.关系型数据库,2非关系型数据库
关系型数据库的主要产品:
oracle:主要大型项目中使用,银行,电信等项目
mysql:web时代使用最广泛的关系型数据库
ms sql server: 微软的项目中使用 (Microsoft Corporation 微软公司)
sqlite: 轻量级数据库,主要应用在移动平台
关系型数据库核心元素
数据行(一条记录,相当于python中的实例对象)   实例对象
数据列(字段,相当于python中实例对象的属性)   字段 实例对象的属性
数据表(数据行的集合,相当于python中的列表)
数据库(数据表的集合,一个数据库中能够有n个数据表)

SQL
structured Query Language
结构化查询语言
在数据库中进行操作的脚本称为sql ,结构化查询语言,
当前关系型数据库都支持使用sql语言进行操作oracle,mysql,ms sql server, sqlite
sql语句主要:
1.DQL:data query language   查询语言,select
2.DML:data manager language 操作,增删改,update,delete,insert
TPL:事务处理语言:begin transaction,commit,rollback
DCL:data control language:进行授权与回收,grant,revoke
DDL:data define language:数据库,表的管理:create,drop
CCL:指针控制语言:控制指针完成表的操作,declare cursor
对于web程序,重点是数据的crud,必须熟练编写DQL,DML能够编写DDL完成数据库
表的操作,
sql是一门特殊的语言,专门用来操作数据库
不区分大小写

MYSQL
特点:免费开源,不要钱 跨品台,提供多语言调用的API接口,使用范围广,
基本使用
服务器端安装
终端:sudo apt-get install mysql-server
用于:接收客户端的请求,执行sql语句,管理数据库
服务器端一般以服务方式管理:名称为mysql
启动,停止,重启
sudo service mysql start
sudo service mysql stop
sudo service mysql restart
查看进程中是否存在进程mysql服务
ps ajx|grep mysql
grep(gelobal regular expression print)
配置文件目录为/etc/mysql/mysql.cnf
客户端:为开发人员与dba使用,通过socket方式与服务端通信,常用的有
navicat命令行mysql

客户端命令
sudo apt_get install mysql-client
mysql --help :详细连接的命令查看帮助文档
mysql -uroot -p  mysql: 进入mysql命令行
ctrl +d ,quit ,exit 退出

                  数据
数据库 -----数据表-------数据行(实例对象)-----数据列(实例对象的属性)字段
dadabase--table---select,update,delete,insert,----alter table add/change/,p/\
modify
使用数据类型的原则:够用就行,尽量使用取值范围小的,而不用大的,可以节省存储空间
常用数据类型: 整型:int bit
小数:decimal
枚举:enum
字符串: char,varchar,text(大于4000)
日期类型: date,time ,datetime
对于图片,视频,音频等文件,上传到某个服务器上,然后在表中存储这个文件的保存路径
约束:primary key 主键 唯一标示
auto_increment :自动增长
unsigned:无符号的整形 signed
not null:非空
unique:唯一,此列的值不允许重复
default:默认值,不填以默认值,填写以填写为准
foreign key:外键,一般不用,:增加了数据与数据之间的耦合性,不利于后期维护,优化

mysql命令行连接
mysql -uroot -p
密码:mysql
退出登录:ctrl+d ,quit,exit
select version(); 查看版本
select now(); 显示当前时间
prompt  :修改输入提示符  可以用 \D,\d,\h,\u \Date \databasee\user\host

数据库操作命令
show databases;
use 数据库名;
select database();查看当前使用的数据库
create database 数据库名 charset=utf8; (字符集格式设置成utf8)创建数据库时使
drop database 数据库名; 删除数据库

数据表的操作执令
show tables;
desc 表名; 查看表结构 describle
create table 表名(字段,类型,约束条件)
alter table 表名 add 列名 类型;
alter table 表名 change 旧列名,新列名 类型;
alter table 表名 modify 列名 修改类型
alter table 表名 drop 列名; 删除列
drop table 表名            删除表

curd
create update refer delete

数据库设计
关系性数据库建议在E-R模型的基础上,根据策划设计,抽取出来模型与关系,
制定出表结构,
开发用,设计数据库轮子:db designer ,power designer,直观的看到实体与实体之间的关系
三范式:列不可分,唯一表示,引用主键
E-R模型  e代表entry 一对一,一对多,多对多,
逻辑删除 isdelete bit default 0
消除重复行 distinct:在select 后面列前使用distinct可以消除重复的行
聚合函数
count(*)
mid(列) max(列) avg(列) sum(列)

分组:
按照字段分组,表示此字段相同的数据会被放到一个组中
having是对分组后的数据筛选

  连接查询
当查询结果的列来源于多张表时,需要将多张表连接成一个大的数据集,再选择合适的列返回
内连接查询:为两个表匹配到的数据
右连接查询:两个表匹配到的数据+ 右表特有数据
左连接查询 两个表匹配到的数据+左表特有数据
select  * from students inner join classes on students.cls_id = classes.id;
on后面是以什么条件连接承德大表,然后以他们公有的属性来展示结果集,
slect 是选择要显示的内容

转载于:https://www.cnblogs.com/ilutt/p/7368425.html

mysql中最常用到的数据类型,约束条件,以及表,字段,行的crud操作指令,function和precedure之间的区别,索引,安全,事务...相关推荐

  1. MySQL 中的常用日期函数

    MySQL 中的常用日期函数: 函数 描述 NOW() 返回当前的日期和时间 CURDATE() 返回当前的日期 CURTIME() 返回当前的时间 DATE() 提取日期或日期/时间表达式的日期部分 ...

  2. mysql数据库优化课程---15、mysql优化步骤(mysql中最常用最立竿见影的优化是什么)...

    mysql数据库优化课程---15.mysql优化步骤(mysql中最常用最立竿见影的优化是什么) 一.总结 一句话总结:索引优化最立竿见影 索引优化:不然有多少行要扫描多少次,1亿行大概是5到10分 ...

  3. 互联网反欺诈体系中的常用技术和数据类型

    互联网反欺诈常用的技术主要包括数据采集.特征工程.决策引擎.数据分析等几个类别: 数据采集: 主要应用于从客户端或网络获取客户相关数据的技术方法.值得强调的是,数据采集技术的使用,应当严格遵循法律法规 ...

  4. MySQL 中你应该使用什么数据类型表示时间?

    当你需要保存日期时间数据时,一个问题来了:你应该使用 MySQL 中的什么类型?使用 MySQL 原生的 DATE 类型还是使用 INT 字段把日期和时间保存为一个纯数字呢? 在这篇文章中,我将解释 ...

  5. 数据库——MySQL(一)(数据库常用命令、数据类型、创建表与修改表结构、约束、约束修改添加)

    MySQL数据库的概述: MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库信息增.删.查.改管理 - ...

  6. mysql中最常用的存储引擎有_mysql常用的存储引擎有哪些

    MySql中的存储引擎有MyISAM引擎,MyISAM Merge引擎, InnoDB引擎,memory(heap)引擎以及archive引擎 MySql中的存储引擎 MyISAM引擎 这种引擎是my ...

  7. Mysql中各种常用的命令行客户端工具

    文章目录 1. mysql 2. mysqladmin 3. mysqlbinlog 4. mysqldump 5. mysqlimport/source 6. mysqlshow 7. myisam ...

  8. MySQL中的常用函数

    1. 字符串函数 2. 字符串函数 模数和被模数任何一个为NULL结果都为NULL. 3. 日期和时间函数 4. 流程函数 5.其他常用函数 MySQL Administrator(图形化管理工具) ...

  9. MYSQL 中 SQL 常用操作

    SQL常用操作大全 1.SQL简单的操作 -- 常见SQL-- 查询 SELECT id,username,password FROM admin;-- 插入 INSERT INTO admin(us ...

最新文章

  1. 图解Python算法
  2. 复制表数据和结构的方法
  3. 中国液化石油气(LPG)市场销售现状与竞争发展策略分析报告2022-2028年版
  4. $_SERVER详细讲解
  5. Log4j 2:性能接近疯狂
  6. c语言某年某月的天数switch,在C语言中 使用switch语句编写“显示某年某月的天数”程序:...
  7. 简单明了学习SQL CTE递归查询
  8. Python入门到精通三天速成第一讲——创建自定义类
  9. C++主线程与子线程的关系
  10. 数据分析、数据挖掘、机器学习、神经网络、深度学习和人工智能概念区别(入门级别)...
  11. 第四季-专题8-LINUX系统调用
  12. DXperience 8.2.3
  13. html网页对账单样式,结算对账单.html
  14. 10月集训test3
  15. 【VMware】Assuming drive cache: write through
  16. 开启binary log功能
  17. 疫情下的校园生活是咋样的?
  18. 离线分析:Flume+Kafka+HBase+Hadoop通话数据统计
  19. Python 条件控制 — if语句
  20. kube-controller-manager源码分析(三)之 Informer机制

热门文章

  1. Linux下Oracle常见问题之Oracle ORA-01033 ORACLE initialization or shutdown in progress
  2. 如何有效提升微信小程序的排名?
  3. 单应性Homography梳理,概念解释,传统方法,深度学习方法
  4. 通过深度学习方法进行肺结节的检测
  5. error : declaration does not declare anything [-fpermissive]
  6. Maxon宣布推出Cinebench Release 20
  7. 快启动u盘启动盘安装系统
  8. c语言cross函数什么意思,通达信cross函数用法,通达信 filter函数 返回什么值
  9. java读取word文档中的文字和图片,doc和docx兼容版
  10. 微信支付接口(公众号支付)+微信支付回调函数 附代码