Mysql是一个非常典型的C/S结构的应用模型,所以Mysql连接必须依赖于一个客户端或者驱动.

在linux中支持两种连接模式:TCP/IP模式和socket

SQL语句的四部分:

DDL:数据定义语言

DCL:数据控制语言

DML:数据操作语言

DQL:数据查询语言

这篇博客主要对DDL进行介绍

一.首先从数据库方面介绍,对的增删查改

1.新建数据库

  CREATE DATABASE panyang;

  CREATE DATABASE panyang2 charset=utf8;       指定字符集

2.查询数据库

  SHOW DATABASES;    该命令行在命令行中教常用

如,在mac终端中连接数据库  mysql -u root -p

  SHOW CREATE DATABASE panyang;  查看创建数据库的时候得语句

3.修改数据库

  ALTER DATABASE panyang charset utf8;  修改数据库编码格式

4.删除数据库

  DROP DATABASE panyang2;

二.操作

在命令行中,使用哪一个数据库命令

  USE 你要用的数据库名称    如:use panyang

1.新建 

  CREATE TABLE student(
    id int(10)  PRIMARY KEY AUTO_INCREMENT NOT NULL,   自增,主键,不能为空
    name VARCHAR(20) NOT NULL UNIQUE,  不能为空,唯一
    age INT(10) NOT NULL,           不能为空
    address VARCHAR(50) NOT NULL      不能为空

  )CHARSET utf8;

2.查询

SHOW TABLES;  查看所有的表;

SHOW CREATE TABLE student;

  

desc student;  查询表结构

  

3.修改(alter.注:update面对的是数据,alert是面对的表)

  a.在表的最后一列新加一个字段interst

    ALTER TABLE student ADD interst VARCHAR(10);

  b.在表的第一列增加一个字段

    ALTER TABLE student ADD sid int FIRST;    

  c.在age字段后增加一个字段

    ALTER TABLE student ADD sex VARCHAR(10) AFTER age;

  d.在age字段后增加一个字段tel并且在最后一列增加email

    ALTER TABLE student ADD tel VARCHAR(13) AFTER age,ADD email VARCHAR(20);

  e.修改列的名称

    ALTER TABLE student CHANGE age age111 int(20);

  f.修改列数据类型

    ALTER TABLE student MODIFY sex int(4);    

  g.删除一个列

    ALTER TABLE student DROP sid;

4.删除

  DROP TABLE student;

补充:

  1.创建一个与一个已经存在的表的表结构相同的表的方法.

    CREATE TABLE student2 like student;  前面是新的表名,后面是旧表名

  2.创建一个与一个已经存在表的备份表(结构相同,数据相同)

    CREATE TABLE student22 SELECT * FROM student;

*************DCL***************

数据控制语言,控制用户权限

一个用户可以做什么操作?

  1.Mysql用户连接Mysql

  2.控制(库,表,数据)权限

主要使用以下命令

GRANT select,update *.* TO 'root'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;

(对ip为localhost的root用户密码为123456,进行查找和增加的权限限制)

GRANT ALL PRIVILEGES ON *.* TO 'test'@'10.0.1.%' IDENTIFIED BY '123456' WITH GRANT OPTION;

(对ip为10.0.1开头的test用户密码为123456,所有权限)

FLUSH PRIVILEGES

这里对个语句进行解释:

1. *.*  库.表

*代表没有显示

*.*代表所有库下面的所有表.如test.student表示test库下的student表

2.'root'@%

%代表没有限制

root代表受限制的用户

'root'@'localhost'表示:ip为localhost的root用户受限制

'root'@'10.0.1.%'表示:ip为10.0.1开头的root用户受限制

权限限制的4个角度:

1、你需要从哪里连接数据库?
2、你需要对谁操作,做什么操作?
3、你要用哪个用户进行操作?
4、密码是什么?

转载于:https://www.cnblogs.com/panpan0301/p/9346552.html

数据库基础之一--DDL(数据库定义语言),DCL(数据库控制语言)相关推荐

  1. sql 两大类 DDL数据定义语言 和DCL数据控制语言

    SQL分为五大类: DDL:数据定义语言   DCL:数据控制语言     DML:数据的操纵语言  DTL:数据事务语言  DQL:数据查询语言. DDL (date definition lang ...

  2. 数据库DDL数据定义语言

    文章目录 DDL数据定义语言 1. 数据库相关操作 1.1 查看DBMS中已有的数据库 1.2 新建一个数据库 1.3 查看数据库信息 1.4 删除数据库 1.5 使用一个数据库(切换一个数据库) 2 ...

  3. 【数据库基础知识二】数据库DataBase(简称DB),数据库基本概念、DDL:数据定义语言,用来操作数据库对象、DML:数据操作语言,用来操作表中的数据

    14天阅读挑战赛 目录 数据库基本概念 数据库DataBase(简称DB) 数据库管理系统Database management system(简称DBMS) 如何操作DBMS? 连接数据库的方式: ...

  4. oracle数据库基础:DDL语言

    DDL数据定义语言 简介 常用的四种关键字为create,drop,alter,truncate. 1.create create,可以用来创建,定义表,视图,序列,索引等等,这里拿建表举例 1.1 ...

  5. mysql请输入一个有效类型的长度值_MySQL数据库基础(三)——SQL语言

    MySQL数据库基础(三)--SQL语言 发布时间:2020-05-19 16:40:05 来源:51CTO 阅读:10596 作者:天山老妖S MySQL数据库基础(三)--SQL语言 一.SQL语 ...

  6. MySQL基础--(2) [SQL(结构化查询语言), DDL(数据定义语言)]

    目录 Sql(结构化查询语言) sql的概念以及特点 DDL(数据定义语言) 创建,删除,修改数据库. 数据库存储数据的特点 数据库表 数据库表中数据的数据类型 数据库表中数据的约束 创建表 设置修改 ...

  7. 大数据技术之Hive 第4章 DDL数据定义语言

    第4章 DDL数据定义语言 4.1 创建数据库 CREATE DATABASE [IF NOT EXISTS] database_name [COMMENT database_comment] [LO ...

  8. 数据库基础(基本概念、关系数据库、数据库标准语言SQL)

    数据库基础 绪论 数据库系统概述 4个基本概念 数据(data) 定义:描述事物的符号.数据的含义称为数据的雨衣,数据与其语义是密不可分的. 数据库(DataBase,DB) 定义:数据库是长期存储在 ...

  9. mysql DDL数据定义语言

    DDL数据定义语言 本节涉及MySQL关键字:create.alter(rename,add,chang,modify,drop).drop.delete.truncate等. -- 创建表: -- ...

最新文章

  1. cat在MATLAB中的应用
  2. Java_apply_in_automatic_system
  3. linux 安全 ***检测 杀毒 rootkit
  4. Win32 API之Setlocale函数配置地域化信息函数
  5. vs2010利用属性表自动配置OpenCV(win7的64位系统,opencv版本是2.4.10)
  6. linux 添加banner,OpenWrt:Linux下生成banner
  7. select的列子说明select内部实现原理
  8. mysql connection_id 表锁的应用
  9. 4月15日SLB升级公告
  10. udhcpc 后台运行的方法
  11. mysql innodb 引擎下ibd文件过大的问题排查记录
  12. 陈一为担任BCF理事
  13. 仅此一文,看懂二极管的所有基础知识点
  14. 业务流程与组织结构优化
  15. C++ 中的线程库和 lamber 表达式
  16. PhysX3.4文档(3) --Geometry
  17. 根据需求,完成如下代码(按照标准格式写),并在测试类中进行测试?
  18. windows7 安装哪个版本的vs_门套安装45度拼接VS直角拼接,哪个更好?
  19. razer鼠标测试软件,那伽梵蛇2014版鼠标驱动及测试_雷蛇鼠标_键鼠评测-中关村在线...
  20. 实战:windows上如何安装kubectl并连接我们的k8s集群(测试成功-博客输出)-2022.1.3

热门文章

  1. OpenCV使用FindContours进行二维码定位
  2. windows server 2012多用户用一个账号同时登陆
  3. CentOS7搭建Git服务器
  4. ArcGIS中QueryTask,FindTask,IndentifyTask 之间的区别
  5. 聊聊成为大神路上的过程
  6. 遇到的一些小的tips
  7. 模型融合之stacking方法
  8. li变成行内块级元素之后,每一个li之间会有间隙,这是为什么?
  9. php多线程foreach,php中foreach curl实现多线程例子
  10. react router 级联路由_前端路由原理解析和实现