程序猿必备技能:数据库管理——关于MySQL
一、初识MySQL
1.什么是数据库?
数据库(Database,DB)简而言之就是存放数据的仓库,是为了实现一定目的,按照某种规则组织起来的数据的集合。
2.使用数据库的必要性
(1)结构化存储大量的数据信息,方便用户进行有效的检索和访问。
(2)可以有效的保持数据信息的一致性、完整性,降低数据冗余。
(3)可以满足应用的共享和安全方面的要求。
3.常见数据库:Oracle、SQL Server、MySQL。
二、数据库表(实体:Entity)
1.在数据库中,实体指的是所有客观存在的,可以被描述的事物。
2.每一行(Row)实际上对应一个实体,通常叫作一条(Record);每一个列(Colnm)称之为字段。
3.相同类型的记录组织在一起的数据结构称之为数据库表(Table),表是实体的集合,用来存储具体的数据。
4.表示记录的集合,数据库是表和关系(Relationship)的集合。
三、数据库系统
数据库系统(Database System,DBS)包含数据库管理系统(Database Management System,DBMS)和数据库管理员(Database Administrator,DBA)等组成。
1.在数据库系统中,数据重复的现象就是数据冗余(Redundance)。
2.数据的完整性是指数据的准确性(Integrality)。
3.主键Primary Key:这个列的值用来唯一标识表中的每一行,用于强制表的实体完整性。一个表只能有一个主键,不允许出现空值(Null)。
如果两列或多列组合起来唯一的标识表中的每一行,则该键也叫作“复合主键”。
(1)最少性是指列表数最少的键
(2)稳定性是指列中数据的特征不要经常更新
4.外键Foreign Key:一种引用的关系,确保“从表”中的某个数据项在“主表”中必须存在,避免发生不存在的错误。
“外键”就是用来达到这个目的,它是相对主键而言,就是“从表”中对应于“主表”中的列,在“从表”中称为外键或者引用键,它的值要求与“主表”的主键或者唯一键相对应。
外键用来强制引用完整性。一个表可以有多少个外键。
四、命令行连接数据库
1.net stop mysql
2.net start mysql
3.mysql -h 服务器主机地址 -u 用户名 -p密码
在本机操作,可省略-h参数
-p后面可以不写密码,按enter键后输入密码。如果写密码,-p和密码间没有空格。
4.查看MySQL版本信息及用户名:select version(),user();
五、SQL(Structured Query Language)
(1)DML(Data Manipulation Language)数据操作语言:insert,update,delete
(2)DDL(Data Definition Language)数据定义语言:create table,create view,drop table
(3)DQL(Data Query Language)数据查询语言:select
(4)DCL(Data Control Language)数据控制语言:Grant,revoke
算术运算符:赋值运算符:比较运算符:逻辑运算符
六、操作数据库
create database 数据库名;
show databases;
use 数据库名;
drop database 数据库名;
create table [if exists]表名()表类型|表字符集|注释;
drop table [if exists]表名;
alter table 表名1rename表名2;
alter table 表名add 新字段;
alter table 表名change原字段 新字段 数据类型[属性];
alter table 表名drop字段;
添加主键约束
alter table 表名add constraint 主键名 primary key表名(主键字段);
添加外键约束
alter table 表名add constraint 外键名foreign key(外键字段)references关联表名(关联字段);
七、属性约束
非空约束not null
默认约束default
唯一约束unique key
主键约束primary key
外键约束foreign key
自动增长auto_increment
八、MySQL系统帮助
help 查询内容;
程序猿必备技能:数据库管理——关于MySQL的更多相关文章
- 程序员必备技能之Markdown
		
Markdown介绍 Markdown是一种纯文本格式的标记语言,比HTML更简单,通过一些简单的语法标记,就可以让文本简洁好看. Markdown已经是程序员一项必备技能了,代码块.流程图.序列图. ...
 - Android java程序员必备技能,集合与数组中遍历元素,增强for循环的使用详解及代码
		
Android java程序员必备技能,集合与数组中遍历元素, 增强for循环的使用详解及代码 作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 For ...
 - PHP程序猿必备的七种武器
		
作为一个程序猿(又或者是程序媛),出来闯荡江湖,没有几种必杀技在手,那是肯定无法赢得江湖名声的,除了必杀技之外,武器也是很重要的,但是一把青钢剑,肯定是无法赢得万千少男少女的欢心的.就连小李飞刀,人家 ...
 - 一个net程序猿必备工具
		
自古以来,人类的进步都是依赖于工具的进步,从刀耕火种,到使用青铜器,再到现在的科技,每一次都使我们的工作效率提高了无数倍,所以一个好的工具能使我们提高无数倍的工作效率,下面,我就根据自己简单的总结一下 ...
 - 程序猿必备软件转载自 www.uhdesk.com
		
XMLSpy 2012 企业版中文破解版 软件描写叙述: XMLSpy是XML(标准通用标记语言的子集)编辑器,支持WYSWYG.支持Unicode.多字符集,支持Well-formed和Valida ...
 - 程序员必备技能:代码审查 (Google牛人谈Code Review)
		
在上一篇博客里我暗示自己将不在为Google工作. 我还没有决定好去哪儿-有几个非常不错的工作机会让我选择.鉴于这段时间内我不受雇于任何公司,我想我可以写点和专业相关的东西,这些东西很有趣,但是如果我 ...
 - 资料汇总--java开发程序员必备技能
		
1. 熟练使用Java语言进行面向对象程序设计(面向对象:继承.多态.抽象): 有良好的编程习惯(阿里开发手册 链接:http://pan.baidu.com/s/1dFEA6cT 密码:kqj4 ...
 - markdown入门基础------程序员必备技能
		
本人博客:https://blog.csdn.net/qq_39576571/article/details/97256521 ·首先:什么是markdown markdown是一种轻量级的标记语言, ...
 - 程序猿必备的10款web前端动画插件
		
1.基于jQuery的瀑布流图片筛选插件 瀑布流的展现方式在目前的网页中用得越来越广泛,特别是图片和首页文章的动态加载. 今天分享的这款就是基于jQuery的瀑布流图片筛选插件,我们可以点击图片分类名 ...
 
随机推荐
- [2016北京集训试题8]连在一起的幻想乡[dp+无向图计数]
			
Description Solution 本博客参考yww大佬的博客,为了加深理解我就自己再写一遍啦. 以下的“无向图”均无重边无自环. 定义f0[n]为n个点构成的无向图个数,f1[n]为n个点构成 ...
 - RHCSA-考前准备
			
1.考前准备 RHCSA classroom虚拟机和server虚拟机 将两台虚拟机切换到初始化快照 打开虚拟机电源,当出现提示时选择我已移动该虚拟机 系统密码: classroom: root As ...
 - day1 HTML  - <head>
			
1.html是什么? 超文本标记语言(Hypertext Markup Language,HTML) <!DOCTYPE html> <html lang="en" ...
 - RHCSA  day5
			
4.调整逻辑卷容量 请按照以下要求调整本地逻辑卷lvm1的容量: 调整后的逻辑卷及文件系统大小为770MiB 调整后确保文件系统中已存在的内容不能被破坏 调整后的容量可能出现误差,只要在730MiB ...
 - 基于Cocos2d-x-1.0.1的飞机大战游戏开发实例(下)
			
在飞机大战游戏开发中遇到的问题和解决方法: 1.在添加菜单时,我要添加一个有背景的菜单,需要在菜单pMenu中添加一个图片精灵,结果编译过了但是运行出错,如下图: 查了很多资料,调试了很长时间,整个人 ...
 - Oracle数据库备份与还原命令
			
http://www.2cto.com/database/201305/210262.html
 - python--自定义模块
			
python模块说明:类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不 ...
 - Appium+python 自动发送邮件(2)(转)
			
(原文:https://www.cnblogs.com/fancy0158/p/10056418.html) 移动端执行完测试case之后,通过邮件自动发送测试报告.大体流程如下: 1.通过unitt ...
 - Debian 给非 ROOT 用户添加 sudoer 权限
			
问题描述 从官方镜像安装的 Debian 9 (Stretch)比较纯净,但因此需要自己安装.配置许多常用的 Linux 应用,这里就需要 sudo (super user do)临时获取 root ...
 - jpa的@Query中"?"占位符的使用小坑
			
今天使用@Query自定义查询语句,出现了一个错误: java.lang.IllegalArgumentException: Parameter with that position [1] did ...