数据库开端

一、关于数据库(文件夹)、表(文件)、记录(文件中的内容)

  必备知识:

      show databases;(注意加s) #查看所有的数据库

      select database();#查看当前所在的数据库;

      use 数据库; #使用数据库(切换数据库)

      show tables;#查看数据库里面的内容

      #表是由记录(内容)放到结构(结构里包括字段)组成的

二、数据库的增、删、改、查

  use数据库; 使用数据库(切换数据库)

  select database(); #查看当前所在的数据库

 增

  create database #数据库名 charset编码方式; #(注意加分号,注意编码问题)

      create database db1 charset utf8;  # 创建 db1 的数据库 编码方式是 UTF-8

 删

  drop database 数据库名 charset 编码方式;   #(注意加分号)

   改

  alter database 数据库名 charset 编码方式;

 查:查看数据库里面的格式  

  show create database 数据库; # 查看当前创建的数据库
  show databases;(注意加 s ) # 查看所有的数据库

  show tables; 查看数据库里面的内容

表(文件)的增删改查

  数据库中的表也应该有不同的类型,表的类型不同,会对应mysql不同的存取机制,表类型又称为存储引擎。

即:储存引擎的不同,导致了表的不同。5.5版本以上默认使用innodb引擎
表的不同 导致表内存放的数据也要有不同的类型 每种数据类型都有自己的宽度,但宽度是可选的
show enginesG; # 查看所有支持的引擎
show variables like 'storage_engine%'; # 查看正在使用的存储引擎

 use 数据库;#切换数据库

select database(); #查看当前所在文件夹

创建表

  create table 表名(字段名1 类型[(宽度) 约束条件],字段名2 类型[(宽度) 约束条件]);

#注意:

  1. 在同一张表中,字段名是不能相同;

  2. 宽度和约束条件可选;

  3. 字段名和类型是必须的

  create table 表名(id int,name char); #注意这个表没有限制条件 即:id和name可以为空;

  drop table 表名;

改:只能修改表的字段(即文件名;或者可以理解为表格的表头,想要修改内容只能针对记录(文件的内容)修改)

  alter table 表 modify name char(6);             # modify修改的意思 修改字段的长度 

  alter table 表 change name NAMA char(7);        # 修改字段名,类型

       alter table 表 default character set gbk; 修改默认字符集??
  alter table 表 convert to character set gbk; 修改默认字符集??

  alter table 表 add 字段,类型; # add 增加的意思 为 表 增加字段,类型
  alter table 表 add 新添加 int(4) not null; 添加列
  alter table 表 drop 要删除的项目; 删除列

查:

  show tables; #查看所有的表

  desc t1表; # 查看 t1表 的详细信息(推荐)
  字段 类型 是否为空 默认。(空) 信息
  +-------+---------+------+-----+---------+-------+
  | Field | Type | Null | Key | Default | Extra |
  +-------+---------+------+-----+---------+-------+
  | id | int(11) | YES | | NULL | |
  | name | char(1) | YES | | NULL | |
  +-------+---------+------+-----+---------+-------+
  int 表示的是显示宽度 而不是存储宽度 我们使用默认的就可以 # zerofill 用0填充
  char 表示的是字符的长度

  show create table t1表;  #查看当前的这张 t1表,比 desc 表 丑

记录(文件的内容)的增删改查

  insert (into 可以不写) 表(id,name) values(1,"mjj01"),(2,"mjj02"),(3,"mjj03");

  # 插入一条记录,规定id,name数据
  请注意:表的类型中的char 括号里面的 数值 那是字符的长度

  复制 (注意在哪里执行命令就复制到哪里)

    完全复制:表的结构和记录(注意在哪里执行命令就复制到哪里)

    create table 新的表(复制者) select * from 数据库.表(被复制者);  从 数据库.表 选择     所有 进行复制;

    不完全复制:只复制表的结构  给一个where条件,条件要求不成立,则只拷贝表结构

    create table 新的表(复制者) select * from 数据库.表(被复制者) where false; 

    从 数据库.表 选择 结构 

  delete from 表; 删除 表 里所有的记录
  delete from 表 where id=2; 删除 表 里id为2的记录
  若要删除多条,可用范围条件或OR
  如
    delete from student where id>100
    delete from student where id=1 or id =2
  甚至可以
    delete from student where id<>2
    这个表中只剩id=2的记录了

  alter table t1 drop id;  --》  删除单个字段。(不能全部删除,起码留一个)。

  alter table b1 drop name,drop age;  --》  删除多个字段。

  update 表 set name='zhangsan';(请注意:表的类型中的char) 修改 表 里面的 所有的name

  update 表 set name='alex' where id=2;   修改 表 里面的 id为2的name

  select 选项 from 表.记录; 从 表.记录 中选择 选项 进行查找

  select * from 表.记录; 从 表.记录 中选择 所有 进行查找

认真做一件事,并将之完全学会掌握为止!
原文地址:https://www.cnblogs.com/wr13640959765/p/9556428.html