定义:数据库就是一个文件系统,通过sql语句来获取数据
关系型数据库:关系型数据库存放的是实体时间的关系,在数据库层面来看就是存放的是表和表之间的关联关系
常见的关系型数据库   MySQL    DB2   sqlserver   oracle    sybase
 
一台数据库服务器中会创建很多数据库(一个项目,会创建一个数据库)。
在数据库中会创建很多张表(一个实体会创建一个表)。
在表中会有很多记录(一个对象的实例会添加一条新的记录)
 
表和表时间会有一些约束
主键约束:primary key 主键约束默认就是唯一 非空的()auto-increment实现自增长
唯一约束:unique
非空约束:not null
 
SQL数据库的结构化查询语句
     DDL 数据定义语言  create(创建)/drop(放弃)/alert(改变)
     DML 数据操纵语音  insert(插入)/update(更新)/delete(删除)
     DCL 数据控制语言  grant/if
     DQL 数据查询语言  select(查看)
 
数据库的增删改查
     show    dataabases             展示所有的数据库
     create database 数据库名 [character 字符集 collate 校对规则]  创建新的数据库
     use 数据库名称     某一个数据库
     drop database 数据库名          删除数据库
     select database()        查看正在使用的数据库
     show create database 数据库名称    查看指定的数据库
     alert database chatater set 字符集 collate 校对规则
 
表的增删改查
            创建表:create tabe 表名 {
                字段名称  字段类型(长度)  约束,
                字段名称  字段类型(长度)  约束,
}
            添加字段:Altle table 表名 add 字段名  类型(长度) 约束
   修改列:altle table 表名 modify 列名 类型 (长度) 约束
   删除字段:altle table 表名 drop 字段名
   修改字段:altle table 表名 change 旧字段名 新字段名 类型(长度) 约束
   查看建表结构:desc  表名;
   查看所有的表字段:show  tables;
   查看建表语句 show create table 表名
   删除表 drop table表名
   修改表名:rename table 表名 to 新表名
   修改表的字符集:altle table 表名 character set 字符集(默认的是utf8 的)
建表常见的约束
    主键约束:primary key   一般实现自增 auto-increment
    非空约束:notnull
    唯一约束:unique
     
     
当数据表中有自增长主键时,当用SQL插入语句中插入语句带有ID列值记录的时候; 
如果指定了该列的值,则新插入的值不能和已有的值重复,而且必须大于其中最大的一个值;
也可以不指定该列的值,只将其他列的值插入,让ID还是按照MySQL自增自己填;
这种情况在进行插入的时候,两种解决方法:
①可以把id的值设置为null或者0,这样子mysql都会自己做处理
②手动指定需要插入的列,不插入这一个字段的数据!

MySQL数据库基本知识(理论总结)的更多相关文章

  1. MySQL数据库基础知识及优化

    MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...

  2. mysql数据库相关知识

    什么是数据库?                数据库(Database)是按照数据结构来组织.存储和管理数据的建立在计算机存储设备上的仓库.(来自:百度) 什么是sql? 结构化查询语言(Struct ...

  3. 阿里面试官必问的12个MySQL数据库基础知识,哪些你还不知道?

    数据库基础知识 1.为什么要使用数据库 (1)数据保存在内存 优点: 存取速度快 缺点: 数据不能永久保存 (2)数据保存在文件 优点: 数据永久保存 缺点: 1)速度比内存操作慢,频繁的IO操作. ...

  4. MYSQL数据库相关知识合集

    1  MYSQL取得某一范围随机数: 关键词:RAND() [产生0~1之间的随机数] mysql> SELECT RAND( ), RAND( ), RAND( ); +----------- ...

  5. 关于Mysql数据库的知识总结

    2017年6月8日,天气阴.心情晴. 连续做梦两个晚上了,昨晚竟然梦见一个很长时间不联系的初中同学了,早上上班的路上聊了聊.女孩现在出差在贵州,风景秀美的地方.我说“你现在生活很滋润”.女孩说“那是你 ...

  6. Java基础86 MySQL数据库基础知识

    本文知识点(目录): 1.MySQL数据库的概述    2.MySQL数据库的管理[对数据库的操作](查询.删除.创建数据库,以及查询和修改数据库的编码模式)    3.表的管理[对数据库 表的操作] ...

  7. Mysql数据库基础知识

    什么是Mysql数据库 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQ ...

  8. mysql数据库基础知识和认识

    mysql 创建一个用户 hail,密码 hail,指定一个数据库 haildb 给 hail mysql -u root -ppassworduse mysql;insert into user(h ...

  9. mysql数据库补充知识2 查询数据库记录信息之单表查询

    一 单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二 关键 ...

随机推荐

  1. 详解FIX协议的原理、消息格式及配置开发

    一.定义 FIX协议是由国际FIX协会组织提供的一个开放式协议,目的是推动国际贸易电子化的进程,在各类参与者之间,包括投资经理.经纪人,买方.卖方建立起实时的电子化通讯协议.FIX协议的目标是把各类证 ...

  2. java中String和int相互转换常用方法详解

    java中int和String的相互转换常用的几种方法: String  > int s="10";int i;第一种方法:i=Integer.parseInt(s);//默 ...

  3. 和朱晔一起复习Java并发(一):线程池

    和我之前的Spring系列文章一样,我们会以做一些Demo做实验的方式来复习一些知识点. 本文我们先从Java并发中最最常用的线程池开始. 从一个线程池实验开始 首先我们写一个方法来每秒一次定时输出线 ...

  4. 《ASP.NET Core 高性能系列》致敬伟大的.NET斗士甲骨文!

    写在开始 三年前,曾写过一篇文章:从.NET和Java之争谈IT这个行业,当时遭到某些自认为懂得java就了不起的Javaer抨击, 现在可以致敬伟大的.NET斗士甲骨文了 (JDK8以上都需要收费, ...

  5. 【深入浅出-JVM】(4):编译 jdk

    环境 mac,xcode,jdk8,openjdk,autoconf 步骤 安装autoconf brew install autoconf 下载openjdk源码 git clone https:/ ...

  6. 哈工大计算机网络Week1-网络应用

    目录 哈工大计算机网络Week1-网络应用 2.1网络应用的体系结构 特点 应采取什么结构 C/S结构 客户机/服务器 P2P CS vs P2P 混合结构 思考题目 2.2网络应用的基本原理 网络应 ...

  7. spark 源码分析之十四 -- broadcast 是如何实现的?

    本篇文章主要剖析broadcast 的实现机制. BroadcastManager初始化 BroadcastManager初始化方法源码如下: TorrentBroadcastFactory的继承关系 ...

  8. Scala 函数式编程(一) 什么是函数式编程?

    为什么我们需要学习函数式编程?或者说函数式编程有什么优势?这个系列中我会用 scala 给你讲述函数式编程中的优势,以及一些函数式的哲学.不懂 scala 也没关系,scala 和 java 是类似的 ...

  9. Pygame安装问题

    1.首先使用如下命令: conda install -c https://conda.anaconda.org/quasiben pygame 测试报错: >>> import py ...

  10. python基础一整型、bool、字符串

    1整型.bool.字符串 1.整型 --数字(int) ​ 用于比较运算的 ​ 32位 -2 ** 31 ~ 2 ** 31 -1 ​ 64位 -2 ** 63 ~ 2 ** 63 -1 ​ 基础运算 ...