MySQL----MySQL数据库入门----第二章 数据库和表的基本操作

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          字段注释

    原文作者:笑苍茫
    原文地址: https://www.cnblogs.com/WangYujie1994/p/10404833.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞