自己上大学时也学习过数据库,做开发时也用到过,但是做界面开发对于数据库的使用相对来说是比较简单的,大学时系统学习的数据库也还给老师了,在测试工作中也只是用到了一些基础sql,增删改查这一类的,但是自己不想仅限于此,因此买了本书系统的恶补下数据库方面的知识,每天记录下学习的内容。

什么是数据库(DataBase)?

数据库是一个以某种有组织的方式存储的数据集合,它是一个保存有组织的数据的容器。但是有时人们可能会用数据库这个词来描述使用的数据库软件,这个是需要分清楚的。数据库软件(DBMS数据库管理系统),它是用来创建管理数据库,通过这些软件来访问操作数据库。

什么是表(Table)?

表是某种特定类型数据的结构化清单,表的名字在数据库里也是唯一的,表有某些特性,如存储什么样的数据,数据如何分解,各部分信息如何命名等等,描述表的这些特性的信息就是所谓的模式(schema),关于数据库和表的布局及特性的信息。

列(column)

列是表中的一个字段,每个列都应该有相应的数据类型(datatype)。

行(row)

行是表的一条记录,表中的行数为记录的总数。

主键(primary key)

主键是一列或者一组列,它的值能唯一区分表中的每一行。那么满足什么条件才能作为主键呢?

1. 主键值唯一。任意两行不具有相同的主键值。

2. 主键值不为空。每个行都必须具有一个主键值。

上面说了主键可以是一列也可以是一组列,当定义了一组列为主键的时候,上述条件必须应用到构成逐渐的所有列,所有列值的组合必须是唯一的(单列的值可以不唯一)。

设置主键的几个好习惯:

1. 不更新主键列中的值

2. 不重用主键列值

3. 不在主键列中使用可能会更改的值

MySQL基础知识:

MySQL的优势:

1.成本,MySQL是开放源代码的,一般可以免费使用。

2.性能,MySQL执行很快。

3.可信赖,MySQL应用广泛,许多知名公司都使用。

4.简单,安装和使用简单。

MySQL、Oracle以及SQL Server都是基于客户机-服务器的数据库,与数据文件打交道的只有服务器软件。关于数据、数据添加、删除和数据更新的所有请求都由服务器软件完成,这些请求或更改来自运行客户机软件的计算机。

服务器软件为MySQL DBMS

客户机可以是MySQL提供的工具、脚本语言等等。

MySQL的安装和工具介绍就不多说了,这个都可以百度到,我之前也整理了个mysql安装配置用户等信息的文章http://www.cnblogs.com/dreamyu/p/6414290.html

参考书籍:MySQL必知必会

MySQL学习笔记(一)——数据库基础的更多相关文章

  1. MySQL学习笔记01_数据库基础知识

    01_1 mysql数据库启动与停止 以<管理员权限>启动cmd: 输入net stop mysql停止mysql服务: 输入net start mysql启动mysql服务: 输入mys ...

  2. MySQL学习笔记(一)—数据库基础

    一.数据库概述 1.数据库的组织结构      (1)数据库就是用来存放信息的仓库.      (2)数据库里的数据集合都存放在数据表(table)里.      (3)数据表由数据行(row)和数据 ...

  3. SQL学习笔记之 数据库基础(一)

    数据库基础 数据库系统的组成:由数据库,数据库管理软件,数据库管理员DBA,支持数据库系统的硬件和软件组成,其中数据库管理员是对数据库进行规划.设计.维护.和监视的专业管理人员,在数据库系统中起着非常 ...

  4. MySQL学习笔记02_数据库和表的基本操作

    02_1 操作数据库 (1)创建数据库 CREATE DATABASE [IF NOT EXISTS] db_name [create_specification[, create_specifica ...

  5. MySQL学习笔记_8_SQL语言基础复习

    SQL语言基础复习 一.概述 SQL语句注释方式 1)以"#"开头直到行尾的所有内容都是注释 2)以"--"(--后还有一个空格)开头直到行尾的所有内容都是注释 ...

  6. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  7. Mysql数据库学习笔记之数据库索引(index)

    什么是索引: SQL索引有两种,聚集索引和非聚集索引,索引主要目的是提高了SQL Server系统的性能,加快数据的查询速度与减少系统的响应时间. 聚集索引:该索引中键值的逻辑顺序决定了表中相应行的物 ...

  8. MySQL学习笔记-数据库文件

    数据库文件 MySQL主要文件类型有如下几种 参数文件:my.cnf--MySQL实例启动的时候在哪里可以找到数据库文件,并且指定某些初始化参数,这些参数定义了某种内存结构的大小等设置,还介绍了参数类 ...

  9. MySQL学习笔记-数据库内存

    数据库内存 InnoDB存储引擎内存由以下几个部分组成:缓冲池(buffer pool).重做日志缓冲池(redo log buffer)以及额外的内存池(additional memory pool ...

  10. MySQL学习笔记-数据库后台线程

    数据库后台线程 默认情况下讲述的InnoDB存储引擎,以后不再重复声明.后台线程有7个--4个IO thread,1个master thread,1个锁监控线程,1个错误监控线程.IO thread的 ...

随机推荐

  1. shell细节决定高度

    1.文件测试操作符 -f[file]:文件存在且为普通文件则为真; -d[directory]:文件存在且为目录文件则为真; -s[size]:文件存在且为文件大小不为0则为真; -e[exist]: ...

  2. java反射原理运用

    1.首先用Java反射机制的要做到的一个目的:我们都知道通过得到一个对象中的指定方法或者属性等,基于这个原理我们来做一个 通用的功能,让客户端可以通过传入的对象和一个标识去调用这个对象里自己想要的方法 ...

  3. 访问权限修饰符Protected专题

    上图描述:A类在a包下,m()方法被protected修饰 上图描述:B类也在a包下,B类是A类的子类. 解析:B类和A类是同包类,B类是A类的子类,因此b对象可以调用m()方法. 上图描述:C类也在 ...

  4. linux jar 命令使用

    原文链接:http://blog.chinaunix.net/uid-692788-id-2681136.html JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包.当然也是 ...

  5. IDEA查看源码时提示:Library source does not match the bytecode for class的问题分析

    通过Maven查看依赖的源码时,通常是Maven自动下载JAR包附属的source包,但是会出现一个问题,由于使用lombok插件会造成编写的Java文件和编译后的class上有差别,所以IDEA打开 ...

  6. js中多行字符串拼接

    前言 我们会经常遇到这样的场景,需要拼接多行字符串,在字符串中动态插入一些数据以达到业务的需求.但是js中并没有标准的多行编辑的函数,于是聪明的程序员们便脑洞大开,书写出许多有趣的方法. 1 2 3 ...

  7. [ssh新闻公布系统三]存储新闻

    一.存储新闻dao方法 在NewsDao.java中新增存储新闻的saveOrupdate方法 public void saveOrupdate(News news){ getSession().sa ...

  8. servelet

    获取页面传递过来的参数. 调用后台代码实现相关业务逻辑. 根据返回结果,进行页面跳转.   问题:httpsession? 拆解: String 里面的.spllit方法.拆开后,返回值为string ...

  9. SpringMVC:文件上传

    MultipartFile attach HttpServletRequest re commons-io-2.0.jar (一定要用2.0以上的版本,否则没有copyInputStreamToFil ...

  10. 查看Laravel版本号的三种方法

    1:最简单的用命令行实现 php artisan --version 2:查看文件 vendor\laravel\framework\src\Illuminate\Foundation\Applica ...