1、数据库简介

(1)、什么是数据库?
    一个文件  一个文件夹  一个u盘   一个硬盘......都叫做数据库    存放数据的仓库
 
(2)、常见的数据库?
    mySql  sqlServer  mongodb  oracle......
 
(3)、数据库的有点
    1、采用结构化查询语言SQL访问数据库
 
    2、支持linux mac os、windows等多种操作系统
 
    3、为多种编程语言提供API 如C java php。。。
 
    4、开源的,无需支付额外的费用
 
    5、提供用于管理 检查 优化数据库的管理工具
 
 
(4)、数据库中的数据是存放在表中的,表是有行和列组成,列也叫做字段

2、表中字段类型的基本了解


(1)、字段类型---字符串

    数据类型          含义

        char              最多255个字符

        varchar       最多65532个字符

        tinytext           最多255个字符

        text                 最多65535个字符

        mediumtext    最多2的24次方-1个字符

        longtext          最多2的32次方-1个字符

当你设置字段类型为VARCHAR或CHAR时,需要指定长度值

 
关于varchar与char的区别
   1、一个汉字=2个英文字母=2字节

 
  2、定义一个char[10]和varchar[10],如果存进去的是‘abcd’,那么char所占的长度依然为10,除了字符‘abcd’外,后面跟六个空格,而varchar就立马把长度变为4了,取数据的时候,char类型的要用trim()去掉多余的空格,而varchar是不需要的,

   3、char的存取数度还是要比varchar要快得多,因为其长度固定,方便程序的存储与查找;但是char也为此付出的是空间的代价,因为其长度固定,所以难免会有多余的空格占位符占据空间,可谓是以空间换取时间效率,而varchar是以空间效率为首位的

(2)、字段类型---时间

        数据类型            含义

        date                  日期,格式:YYYY-MM-DD

        time                  时间,格式:HH:MM:SS

        datetime           日期时间,格式:YYYY-MM-DD HH:MM:SS

        timestamp        功能和detetime相同(但范围小)

        year                  年份,格式:yyyy

3、字段属性

unsigned:
    如果设置unsigned那么只能存储正数
 
    例如金额  订单id  用户id等等
 
zerofill:
    定义无符号的数值,对应的取值范围翻倍
    
    当插入该列的长度小于定义的长度的时候会自动在前面补0   这个属性和unsigned一起使用
 
binary:
    只用于char和varchar值,当字段指定了该属性时,将以区分大小写的方式排序

4、NULL&&NOT NULL

指定null属性时,该列可以保持为空
 
如果将一个列定义为not null,将不允许向该列插入null值
 
选中:可以为空  
 
不选中:不能为空

5、索引

(1)、mysql的索引主要有以下几种
    1、主键索引:primary
 
    2、唯一索引:unique
 
    3、索引:index
 
    4、全局索引:fulltext
 
主键索引: 是一种特殊的唯一索引,一个表只能有一个主键,不允许有空值
 
唯一索引: 索引列的值必须唯一,但允许有空值
 
索引: 这是最基本的索引,它没有任何限制,也是我们大多数情况下用到的索引。
 
全局索引: MySQL从3.23.23版开始支持全文索引和全文检索,FULLTEXT索引仅可用于 MyISAM 表;他们可以从CHAR、VARCHAR或TEXT列中作为CREATE TABLE语句的一部分被创建,或是随后使用ALTER TABLE 或CREATE INDEX被添加。
 
可以在char、varchar或text类型的列上创建
 
 
 主键索引与唯一索引的区别
 
  1、主键不允许空值,唯一索引允许空值
  2、主键只允许一个,唯一索引允许多个
 
(2)、索引的优点及缺点:
 
    优点:
         大大加快数据查询速度
 
         通过创建唯一索引,保证数据库表每行数据的唯一性
 
    缺点:
         维护索引需要耗费数据资源
 
         占用磁盘空间
 
         影响对表的数据进行增删改的速度

6、auto_increment

当存在并发的时候
 
自动生成整数值
 
新值为上一次插入的值+1
 
只适用于整数列
 
必须有唯一索引
 
必须具备NOT NULL属性
 
A_I就是auto_increment的缩写

【php】---mysql---基本操作及使用---【巷子】的更多相关文章

  1. mysql 基本操作语句

    mysql 基本操作笔记: 创建表demo:CREATE TABLE `role` ( `role_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMME ...

  2. css属性编写顺序+mysql基本操作+html细节(个人笔记)

    css属性编写顺序: 影响文档流的属性(比如:display, position, float, clear, visibility, table-layout等) 自身盒模型的属性(比如:width ...

  3. 【mysql】mysql基本操作

    mysql基本操作 1.mysql表复制 mysql 表结构的复制 create table t2 like t2 mysql 表数据的复制 insert into t2 select * from ...

  4. 数据库相关 Mysql基本操作

    数据库相关 设计三范式: 第一范式: 主要强调原子性 即表的每一列(字段)包含的内容,不能再拆分.如果,某张表的列,还可以细分,则违背了数据库设计的第一范式. 第二范式: 主要强调主键,即:数据库中的 ...

  5. Mysql基本操作、C++Mysql简单应用、PythonMysql简单应用

    MySql基本操作 -- 当指定名称的数据库不存在时创建它并且指定使用的字符集和排序方式 CREATE DATABASE IF NOT EXISTS db_name CHARACTER SET UTF ...

  6. MySQL必知必会笔记-Mysql基本操作

    Mysql基本操作 mysql的基本操作包括增.删.改.查,本书中前三章简单的介绍MySQL为何物,查是mysql中非常重要的功能,4-6章展示了mysql的查(查询--select)的简单实现,my ...

  7. day02 MySQL基本操作

    day02 MySQL基本操作 昨日内容回顾 数据库演变史 1.纯文件阶段 2.目录规范 3.单机游戏 4.联网游戏 # 数据库就是一款帮助我们管理数据的程序 软件开发架构及数据库本质 cs架构与bs ...

  8. MYSQL基本操作(上)

    很久之前,就想做个Mysql的小结,毕竟数据库知识是软件研发的基本技能,这里话不多说,开始总结一波. 数据库基本概念 数据库为高效的存储和处理数据的介质(主要分为磁盘和内存两种),一般关系型数据库存储 ...

  9. MySQL(二) MySQL基本操作

    数据库的基本操作 启动关闭 MySQL 服务 MySQL 安装好后,默认是当 Windows 启动.停止时,MySQL 也自动.停止.不过,用户可以使用 Windows 下的服务管理器或从命令行使用 ...

  10. CodeIgniter框架——创建一个简单的Web站点(include MySQL基本操作)

    目标 使用 CodeIgniter 创建一个简单的 Web 站点.该站点将有一个主页,显示一些宣传文本和一个表单,该表单将发布到数据库表中. 按照 CodeIgniter 的术语,可将这些需求转换为以 ...

随机推荐

  1. Spring的p标签

    看Spring in action的时候看过p标签,可惜这东西不用就忘. p标签是为了简化setter的注入而引入的. 用法: p:属性 = "{值}" p:属性-ref = &q ...

  2. e585. Converting Between RGB and HSB Colors

    This example demonstrates how to convert between a color value in RGB (three integer values in the r ...

  3. javascript中call、apply、argument、callee、caller

    1.Call方法 调用一个对象的一个方法,以另一个对象替换当前对象. call([thisObj[,arg1[, arg2[, [,.argN]]]]]) thisObj 可选项.将被用作当前对象的对 ...

  4. 2014Esri全球用户大会之影像和栅格

    1.现在Esri已将影像作为GIS解决方案的一部分,其详细战略部署是如何的? 在过去的十年.Esri有规划的在ArcGIS平台(主要为Desktop和Server)中管理和开发影像和栅格功能.这包含影 ...

  5. 详解ASP.NET Core Docker部署

    前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行ASP.NET Core应用程序. ...

  6. 演示-JQuery中伪元素和伪类选择器

    HTML代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...

  7. 使用MFC WinInet进行FTP中文件的简单上传和下载功能

    建立基于对话框的MFC应用程序CMfcFtpWinInetDlg: 1.首先Dlg类中包含头文件 #include "afxinet.h" 2.添加成员变量:  C++ Code  ...

  8. PHPCMS v9设置文章的审核功能

    对于新建的站点,如果想设置会员发布的文章必须通过审核后才能发布,则需要以下几步来完成: 1.根据需要自定义管理员角色或选择已有角色. 步骤:设置->管理员设置->角色管理->权限设置 ...

  9. nyoj-655-光棍的yy(大数)

    光棍的yy 时间限制:1000 ms  |  内存限制:65535 KB 难度:2 描写叙述 yy常常遇见一个奇怪的事情.每当他看时间的时候总会看见11:11,这个非常纠结啊. 如今给你m个1,你能够 ...

  10. 九度 1481 Is It A Tree?

    题目 给定一个有向图, 判断其是否是一棵树 要求 (1) 除了根节点外, 每个节点只有唯一的前驱 (2) 从根节点出发, 到任何节点有且只有一条路径 思路 1. 要求(1) 可以通过记录每个节点的前驱 ...