2.1 数据库和数据库表的创建

  ①数据库的创建(在数据库系统中划分一块存储数据的空间):  

create database 数据库名称 [charset 字符集];

  ②数据库表的创建

use 数据库名
create table 数据库表名(
字段1 数据类型 [属性],
字段2 数据类型 [属性],
字段3 数据类型 [属性],
...
字段n 数据类型 [属性]
);

注意:

  数据库

  (1)在①中,[ charset 字符集 ] 是可选的,用于设定数据库的默认字符集,即数据库存储使用的字符集。当不声明时,默认继承服务器的字符集 utf-8。

  (2)关于字符集,常见的字符集:ASCII(英文字母,数字),GBK(国标扩展中文简体字符集,big5,繁体中文),UTF8。在开发时候,要注意三码合一,即数据库、PHP脚本、浏览器三者各自使用的字符集应该统一,建议显示为UTF8)。

  (3)已经存在的数据库,无法再次创建。

  (4)数据库命名以字母、数字、下划线组成,长度不超过32个字符

  数据库表

  (1)在创建数据库表之前,应该使用“use 数据库名”指定操作在哪个数据库中进行,否则会抛出“No database selected”错误。

2.2 数据库和数据库表的查看

  ①数据库的查看

  查看全部数据库:

show databases;

  查看某个创建的数据库:

show create database 数据库名字;

  ②数据库表的查看

  查看当前数据库中全部数据库表:

show tables;

  查看某个具体数据库表方法1:

show create table 数据库表名;

  查看某个具体数据库表方法2:

desc 数据库表名;

注意:

  数据库

  (1)系统数据库(information_schema,performance_schema,mysql)不能删除。

  (2)查看某个具体的数据库信息时,显示的信息包括数据库的创建语句及数据库选项(字符集)。

  数据库表

  (1)查看前,需要首先指定要查看的数据表所在的数据库。否则:no database selected。

  (2)未选择数据库,可以通过from指定数据库名称。 show tables from 数据库名;

  (3)查看某个具体数据库表方法1,可以显示数据表的结构、定义语句及字符集编码,若想显示结果更加美观,可以使用 show create table 数据库表名\G

   (4)查看某个具体数据库表方法2,查看表的字段信息,其中包括字段名、字段类型等信息。

2.3 修改数据库和数据库表

  ①数据库的修改 

alter database 数据库名 charset 新字符集;

  ②数据库表的修改

  1、修改数据库表名

alter table 表名 rename [to] 新表名;

  2、修改数据库表的字段名

alter table 表名 change  旧字段名   新字段名   新字段的字段类型;

  3、修改数据库表的字段数据类型

alter table 表名 modify  字段名字   新的数据类型;

  4、添加字段

alter table 表名 add   字段名    字段类型 [约束条件] [first|after 已存在的字段];

  5、删除字段

alter table 表名 drop 字段名;

  6、调整字段位置

alter table 表名 modify  字段名1  数据类型  first|after 字段名2;

注意:

  数据库

  (1)数据库的修改指的是修改数据库的字符集,数据库名称不能修改。

  数据库表

  (1)在修改数据库表的字段名中,新的字段名称后面的数据类型必须添加,哪怕新的名称的数据类型与之前的字段的数据类型相同,也必须添加。

2.4 删除数据库和数据库表

  ①数据库的删除

drop database 数据库名称;

  ②数据库表的删除

drop table 数据库表名称;

2.5 字段类型初步介绍

  ①整型

  1、tinyint                    -128~127

  2、smallint       -3万~3万

  3、int       -800万~800万

  4、mediumint    -21亿~21亿

  5、bigint     太大了,不会计算了

  ②小数

  1、float      float存储小数类型存在精度的问题

  2、double

  3、decimal(M,D)     对应精度要求比较高的,使用decimal类型,实现小数的精确存储。其原理为可以存储每位数字。一般用来存储与钱有关的数字。

  注意:decimal类型的有效范围由M和D决定,其中M表示的数据的长度,D表示的小数点后的长度。例如将数据类型为decimal(6,2)的数据3.1415插入数据库后,显示的结果是3.14.

  ③字符串类型

  1、char(M)      char存储长度比较固定的字符串,如手机号,身份证号,序列号,邮编,速度快。

  2、varchar(M)    varchar一般用来存储长度变化比较大的字符串,如文章标题,商品名称,速度慢。

  注意:

  M为该字段可以存储的最多字符数,如varchar(10)。M参数不可以省略,此外不能超出指定的长度。

  可以使用text类型,存储较长的字符串,无需指定字符串的具体长度。

  ④日期类型

  1、year      YYYY          '1999'/1999 (支持数字或者字符串插入)

  2、date  YYYY-MM-DD      支持‘YYYY-MM-DD’或者‘YYYYMMDD’字符串格式插入

  3、time  HH:MM:SS       支持“HHMMSS”字符串/HHMMSS数字格式插入

  4、datetime   YYYY-MM-DD HH:MM:SS    支持“YYYY-MM-DD HH:MM:SS”/“YYYYMMDDHHMMSS”字符串或者YYYYMMDDHHMMSS数字格式插入

  

2.6 表的属性(约束)

  ①primary key 主键约束,唯一标识对应记录。主键字段的值不能重复,不能为空。

  ②foreign key 外键约束。

  ③null / not null   非空约束。

  ④default     设置字段的默认值,在没有录入时自动使用默认值填充。

  ⑤unique   唯一键,设置字段的值为唯一的,可以同时设置多个字段为唯一键。唯一键字段的值可以为空。

  ⑥auto_increment       设置字段为自动增长,默认从1开始自动分配编号。类型必须为整型。自增长字段必须为一个key。

  ⑦comment          字段注释

MySQL----MySQL数据库入门----第二章 数据库和表的基本操作的更多相关文章

  1. MySQL----MySQL数据库入门----第一章 数据库入门

    第一章 数据库入门 1.1 数据库基础知识 1.1.1 数据库概述 数据不仅包括普通意义上的数字,还包括文字.图像.声音等.也就是说,凡是在计算机中用来描述事物的记录都可称作数据. 数据库的基本特点: ...

  2. mysql学习 第二章 数据库的基本操作

    3.1   创建数据库 MySQL安装好之后,首先需要创建数据库,这是使用MySQL各种功能的前提.本章将详细介绍数据的基本操作,主要内容包括:创建数据库.删除数据库.不同类型的数据存储引擎和存储引擎 ...

  3. Mysql技术内幕-笔记-第二章 数据类型

    第二章 数据类型 Mysql中尽量不要使用UNSIGNED,因为可能会带来一些意想不到的效果 SHOW CREATE TABLE tablename\G;查看表的创建语句 ZEROFILL会将宽度小于 ...

  4. MySQL基础之第1章 数据库概述

    1.1.数据存储方式 1.人工管理阶段2.文件系统阶段3.数据库系统阶段 1.2.数据库泛型 数据库泛型就是数据库应该遵循的规则.数据库泛型也称为范式.目前关系数据库最常用的四种范式分别是:第一范式( ...

  5. S2 第二章数据库的实现

    实现增删改查代码 1 select * from student --增加数据 insert into student (name,banji,xuehao) values(,) --修改数据 upd ...

  6. JAVA 入门第二章 (面对对象)

    本渣渣鸽了一个月终于有时间更新.因为有c++基础,学起来这章还是比较简单的,本章我觉得是程序猿质变课程,理解面向对象的思想,掌握面向对象的基本原则以及 Java 面向对象编程基本实现原理,熟练使用封装 ...

  7. RabbitMQ 消息队列 入门 第二章(交换类型fanout)

    1.安装完 RabbitMQ 之后,我们可以点击  http://localhost:15672/#/  默认账号:guest  密码: guest  在这上面我们可以查看执行情况.管理连接.管理队列 ...

  8. Linux基础入门 第二章 Linux终端和shell

    Linux终端 进入编辑IP地址命令:vi /etc/sysconfig/network-scripts/ifcfg-eth0 按键“i”:进行编辑 按键“ESC”:退出编辑  按键“:”:输入wq, ...

  9. java入门第二章——java编程基础

    习题 一.填空题 (p)1.java中的程序代码都必须在一个类中定义,类使用(class)关键字来定义. (p)2.布尔常量即布尔类型的两个值,分别是(true)和(false) (p18)3.jav ...

随机推荐

  1. 关于eclipse连接外置android模拟器

    1.win+R,输入cmd,打开命令提示符 2.cd D:\Java(安卓应用开发)\adt-bundle-windows-64\sdk\platform-toolsadb connect 127.0 ...

  2. js 捕捉回车键触发登录,并验证输入内容

    js 捕捉回车键触发登录,并验证输入内容 有时候我们会遇到 web 页面中捕捉按键,触发一些效果, 比如常见的回车键触发登录,并验证输入内容,下面会介绍,截图: 一.最简单的捕捉回车键:判断按下的是不 ...

  3. Azure 中部署WordPress的方法

    一.Azure 中创建WordPress虚拟机(1).登陆Azure:打开Azure 官网,点击右侧上方的登陆Azure门户,输入Azure帐号与密码,点击 登陆 . (2).创建Wordpress虚 ...

  4. 设计模式(16) 观察者模式(OBSERVER)C++实现

    意图: 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新. 动机: 将一个系统设计成一系列相互协作的类有一个常见的副作用:需要维护相关对象之间的一 ...

  5. 无法用Put方式请求发布在IIS中的WebAPI

    WebApi程序发布到IIS上后,无法使用Put的方式进行请求,错误信息如下:             原因和解决方案:   在IIS中默认不支持Put请求和Delete请求,因为IIS中注册的Web ...

  6. 外部主机无法访问IIS发布的网站

    在IIS中发布网站,在本地可以直接访问,但是其他主机不能访问改发布的网站.   此问题一般是IIS的配置或者防火墙的配置的原因.     如果禁用了以下防火墙入站规则会导致外部主机无法访问本地发布的网 ...

  7. Angular2.0知识架构图

    知识架构图:

  8. JavaScript(核心、BOM、DOM)

    http://www.flyne.org/article/407 JavaScript(核心.BOM.DOM) JavaScript是基于对象和事件驱动的客户端脚本语言.有如下特点: 交互性 安全性( ...

  9. 随手练——USACO 1.44 母亲的牛奶

    P1215 [USACO1.4]母亲的牛奶 Mother's Milk 洛谷 P1215:https://www.luogu.org/problemnew/show/P1215 解题思想:DFS 大一 ...

  10. 【Vue】安装(NPM 方法)

    [Vue2.0 新手完全填坑攻略——从环境搭建到发布]http://www.jianshu.com/p/5ba253651c3b 1.在用 Vue.js 构建大型应用时推荐使用 NPM 安装 2.Vu ...