阅读 147

SQL语言分类

开源数据库MySQL DBA运维实战

二、SQL

1、SQL语言分类

  1. SQL:Structured Query Language结构化查询语言)主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。

  2. DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER

2、名词解释

  1. 数据库服务器:运行着数据库应用程序的设备=硬件+系统软件+MYSQL软件

  2. 数据库

  • show databases; ---显示数据库的各个库(如同房间的一个个格子)

  • mysql: 授权库,主要存储系统用户的权限信息

  • information_schema: 虚拟库,主要存储了系统中的一些数据库对象的信息,例如用户表信息、列信息、权限信息、字符信息等

  • create database ku1;---创建个人库

  • 表(EXCEL)的管理单元

  1. 表:记录的管理单元

  2. 字段(列)

  3. 记录(行):由一个个字段组成,信息的载体

  4. 类型:字符,数字,日期

  5. 图示

SQL语言分类

3、DDL

  1. DDL库

  • 创建数据库:create database ku1;

  • 查看所有数据库:show databases;

  • 进入ku1:use ku1; 调用当前库:select database();

  • 删除库:drop database ku1;

  • 数据库在centos系统中的位置:/var/lib/mysql/ ---数据库的实体,可进行备份

  1. 数据类型

  • int:整数型

  • float:浮点型

  • 字符系列 char和varchar

  • 枚举类型 enum:单选

  • 集合类型 set:多选

  1. 时间和日期类型

  • 年 year

  • 日期 date

  • 时间 time

  • 日期和时间 datetime

  1. 约束类型

  • primary key:标识该字段为该表的主键,可以唯一的标识记录,不可以为空

    创建

    登录后复制

    create table student.student4(id int not null, 
    name varchar(50) not null, 
    sex enum ('m','f') default 'm' not null, 
    age int unsigned default 18 not null, 
    hobby set('music','disc','dance','book') default 'book,dance' );

    插入

    foreign key:标识该字段为该表的外键,实现表与表(父表主键/子表1外键/子表2外键)之间的关联

    创建

    登录后复制

    create table student6(id int primary key not null auto_increment,name varchar(50) not null,
    sex enum('male','female') not null default 'male', 
    age int not null default 18);

    登录后复制

    create table student7(
      -> id int auto_increment not null,
      -> name varchar(50) not null,
      -> sex enum('male','female') not null default 'male', 
      -> age int not null default 18,
      ->  primary key(id)
      -> );

    插入

    登录后复制

    insert into student6 values (1,'alice','female',22);

    登录后复制

    insert into student6(name,sex,age) values('jack','male',19),
    ('tom','male',23);

    unique key:标识该字段的值是唯一的,可以为空,一个表中可以有多个UNIQUE

  • auto_increment:标识该字段的值自动增长(整数类型,而且为主键)

  • default:为该字段设置默认值

  • not null:必填

  • unsigned:无符号,正数

  • zerofill:使用0填充,例如0000001

  1. DDL-表

  • 创建表

    登录后复制

    CREATE  DATABASE school;use school;   
    
    create table student1(  id int, name varchar (20) ,   sex enum('m','f'), age int );

    查看表名

    登录后复制

    show tables;

    表中插入内容

    登录后复制

    insert into student1 values (1,'zhangsan','m',33) ;

    登录后复制

    insert into student1   (id,name,sex,age)  values (1,'zhangsan','m',33) ;

    查看表内容

    登录后复制

    select * from student1;

    查看表结构

    登录后复制

    desc student1;


文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐