mysql数据库

1、数据库简单介绍

   数据库概念:是依照数据结构来组织、存储和管理数据的仓库。

2、经常使用术语

   数据库:是一些关联表的集合

   数据表:表是数据的矩阵,在数据库中看起来像一个简单的电子表格

   列:一列数据元素包括了同样的数据

   行:一行是一组相关的数据

   主键:主键是唯一的,一个数据表中仅仅能包括一个主键

   外键:外键用于关联两个表

   索引:使用索引能够高速訪问数据库表中的特定信息

3、经常使用命令

   1、链接数据库:mysql -u root -p 回车输入password就可以

   2、退出数据库:mysql>exit 或者 mysql>quit

   3、数据库帮助信息:mysql --help

   4、创建数据库:mysql>create database test     //创建了一个名为test的数据库

   5、删除数据库:mysql>drop database test

   6、选择数据库:mysql>use test

4、数据库类型

   类型大致能够分为三类:数值、日期/时间和字符串类型

 

      类型             大小        用途

   1、数值

      INT/INTEGER      4字节       整数型

      MEDIUMINT        3字节       整数型

      SMALLINT         2字节       整数型

      TINYINT          1字节       整数型

      BIGINT           8字节       整数型

      FLOAT            4字节       单精度浮点型

      DOUBLE           8字节       双精度浮点型

   2、日期/时间

      DATE             3字节       YYYY-MM-DD

      TIME             3字节       HH:MM:SS

      YEAR             1字节       YYYY

      DATETIME         8字节       YYYY-MM-DD HH:MM:SS

      TIMESTAMP        8字节       YYYYMMDD HHMMSS

   3、字符串

      CHAR             1字节       字符串型

      TEXT             4字节       文本型

5、基本的语法命令

   1、创建数据表

   mysql>create table student(

       ->id int not null auto_increment,

       ->name char(20) not null,

       ->age int,

       ->primary key (id)

       -> );

   注:mysql命令终止符为分号(;)。

   2、删除数据表

   mysql>drop table student;

   3、插入数据

   mysql>insert into student(id,name) values (20028,"王刚");

   4、查询数据

   mysql>select * from student;

   mysql>select name from student;

   5、更新数据

   mysql>update student set name="王强" where id=20028;

   6、删除数据

   mysql>delete from student where id=20028;

6、高级语法命令

   1、like子句

   mysql>select * from student where id like '%00%' and name="王强";

   注:"%"指匹配多个,"?

"指匹配一个

   2、排序

   mysql>select * from student order by id asc/desc;

   注:asc为升序。desc为降序

   3、join子句

   mysql>select a.id,a.age,b.sex from student a, test b

       ->where a.id=b.id;

   mysql>select a.id,a.age,b.sex from student a left join test b

       ->on a.id=b.id;

   注:使用left join,该语句会读取左边的数据表(student)的全部选取的字段数据,

       即使右边表(test)中没有相应的字段值。

   4、删除、加入或改动表字段

      1、改动表名

      mysql>alter table test rename to new_test;

      2、删除表中字段

      mysql>alter table student drop age;

      注:假设数据表中仅仅剩余一个字段则无法使用drop来删除字段

      3、加入表中字段   

      mysql>alter table student add age int;

      注:运行以上命令后,age字段会自己主动加入到数据表字段的末尾

      4、改动字段类型

      mysql>alter table test modify name char(30);

      5、改动字段名称

      mysql>alter table test chang name new_name char(40);

      6、改动字段默认值

      mysql>alter table test alter age set default 24;

7、正則表達式

   

      模式                  描写叙述

       $                匹配输入字符串的结束位置

       ^                匹配输入字符串的開始位置

       .                匹配除"\n"之外的不论什么单个字符。要匹配"\n"可使用"[.\n]"

      [...]             字符集合,匹配包括的任一个字符,列如[abc]能够匹配"apple"中的a

      [^...]            字符集合。匹配未被包括的随意字符。列如[^abc]能够匹配"apple"中的p

       *                匹配前面的子表达式零次或多次

       +                匹配前面的子表达式一次或多次

      {n}               n是一个非负整数,匹配确定的n次,比如"o{2}"不能匹配"Bob"中的"o"可是能匹配"food"中的两个o

      {n,m}             m和n均为非负整数,当中n<=m,最少匹配n次且最多匹配m次

   1、查找name字段中以'st'开头的全部数据

   mysql>select name from student where name regexp '^st';

   2、查找name字段中包括'mar'字符的全部数据

   mysql>select name from student where name regexp '*mar*';

MYSQL之数据库初窥的更多相关文章

  1. MySQL数据库初识——初窥MySQL

    初步了解MySQL基本数据库语言 1.创建一个Mysql数据库 create database  database_name: 2.显示所有的Mysql数据库 show databases: 3.使用 ...

  2. 初窥Flask

    初窥Flask Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求 ...

  3. scrapy2_初窥Scrapy

    递归知识:oop,xpath,jsp,items,pipline等专业网络知识,初级水平并不是很scrapy,可以从简单模块自己写. 初窥Scrapy Scrapy是一个为了爬取网站数据,提取结构性数 ...

  4. iOS视频直播初窥:高仿<喵播APP>

    视频直播初窥 视频直播,可以分为 采集,前处理,编码,传输, 服务器处理,解码,渲染 采集: iOS系统因为软硬件种类不多, 硬件适配性比较好, 所以比较简单. 而Android端市面上机型众多, 要 ...

  5. Scrapy 1.4 文档 01 初窥 Scrapy

    初窥 Scrapy Scrapy 是用于抓取网站并提取结构化数据的应用程序框架,其应用非常广泛,如数据挖掘,信息处理或历史存档. 尽管 Scrapy 最初设计用于网络数据采集(web scraping ...

  6. python爬虫 scrapy2_初窥Scrapy

    sklearn实战-乳腺癌细胞数据挖掘 https://study.163.com/course/introduction.htm?courseId=1005269003&utm_campai ...

  7. day 41 数据库初学习

    前情提要: 数据库初识别 一:数据库的介绍 https://github.com/Endless-Clould/homework/blob/master/student_system.sql 数据再这 ...

  8. 初窥ElasticSearch

    初窥ElasticSearch 官网上面的,不知道讲的是什么.. youtube上面有一个start with,内容是在windows以下跑这个elastic search,然后用一个fidler工具 ...

  9. IPFS初窥

    虽然区块链有很多令人兴奋的特性,但是也有其固有的缺点.比如,文件或者长度较长的文本信息就不适合存储在链上.那么如何解决这个缺点呢?一个解决方案就是IPFS(Interplanetary File Sy ...

随机推荐

  1. 【问题探索日志】python 函数优化

    # 事情是这样的,我写的一个程序帧率上不去. 然后发现了一个疑似有问题的地方,如下 def around(x,y): around_dict = {(i,j) for i in range(-1,2) ...

  2. Ubuntu 16.04安装JDK7/JDK8的两种方式

    ubuntu 安装jdk 的两种方式:1:通过ppa(源) 方式安装. 2:通过官网下载安装包安装. 这里推荐第1种,因为可以通过 apt-get upgrade 方式方便获得jdk的升级 使用ppa ...

  3. Linux(Centos6.5)+Nginx+PHP-fpm+Mysql配置

    第一步:准备安装包 1.从[](http://nginx.org/en/download.html).下载nginx 源码包 //NOTE! 下载稳定版本 2.从[](http://php.net/d ...

  4. hdu 4790 数学

    /* 题意:给你二个区间[a,b]和[c,d] 分别从中选一个数x和y使的(x+y)%p=m; 可以这样来求,先求出(0->b和0->d区间段的值)-(区间0->a-1和0-> ...

  5. ie6 js报错汇总

    假如ie6是一个非美女的人,那不知道为多少人乱刀砍多少次,假如不幸它是一个美女,那不知道要被多少人轮奸完之后还是乱刀砍死. ie6的js的错误说明总是很隐晦的,它喜欢和捉迷藏.报的行数和错误,常常不知 ...

  6. Codevs 2693 上学路线(施工)

    时间限制: 2 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 问题描述 你所在的城市街道好像一个棋盘,有a条南北方向的街道和b条东西方向的街道. 南 ...

  7. 搭建nexus私服,无法下载相关jar包,报错Repository proxy-mode is BLOCKED_AUTO

    在搭建nexus私服的时候,之前没直接用来下载maven的相关插件jar包,一直可以使用, 结果今天要编译hadoop的时候,在linux上新用maven就报错了,无法下载maven的相关插件(如下) ...

  8. apache + DSO -动态共享对象(DSO)

    http://www.jinbuguo.com/apache/menu22/dso.html

  9. java 读取数据库数据转化输出XML输出在jsp页面

    因为老师实验报告要求,搭建服务端解析XML 下面代码实现转化XML格式也是在网上找的转化代码 输出在jsp页面以便于客户端解析是自己写的 一个类就解决了Test package tests; //三只 ...

  10. how to read openstack code: loading process

    之前我们了解了neutron的结构,plugin 和 extension等信息.这一章我们看一下neutron如何加载这些plugin和extension.也就是neutron的启动过程.本文涉及的代 ...