MySql 是一款使用便捷、轻量级的数据库。因为他体积小、速度快、安装使用简单、开源等优点,目前是使用最广泛的数据库。目前位于Oracle甲骨文公司旗下。那今天我们就来介绍一下数据库的基本操作。具体介绍通过指令的方式来操作数据库。

  首先,连接数据库的软件很多,比如说 Navicat 等软件。通过这些软件可以轻松便捷的操作数据库,但是今天的重点不在这。

  我们今天普及一下指令操作的方式操作MySql数据库。

我们主要从以下 4 个方面介绍:

  1.数据库的 创建、删除、查询 等语句    跳转

  2.用户的 创建、删除、配置权限等语句    跳转

  3.表的 创建、删除、查询    跳转

  4.表的字段的 删除、修改等操作    跳转

  5.修改约束条件    跳转

  那接下来就开始具体的介绍。

1.数据库的 创建、删除、查询 等语句

CREATE DATABASE IF NOT EXISTS myDB CHARACTER SET 'UTF8';

  上述语句是 判断如果 myDB 数据库不存在就创建他,并设置其为 UTF8 的字符集编码。如果已经存在就不会重复创建。

DROP DATABASE IF EXISTS mydb;

  若果 mydb 数据库存在,就删除数据库,不存在则不删除

SHOW DATABASES;

  查询显示出,本机所有的数据库

USE mybiji;

  打开使用 mybiji 数据库,对数据库的所有操作都必须打开一个数据库才行

SHOW TABLES  FROM mybiji;

  显示 mybiji 数据库的所有数据表

 2.用户的 创建、删除、配置权限等语句

CREATE USER 'fei'@'%' IDENTIFIED BY 'fei';

  这是创建用户 fei 。主机名可以为空,为空默认是 %权限,表示所有主机均可连接。

CREATE USER 'fei'@'localhost' IDENTIFIED BY 'fei';

  创建用户 fei 。 localhost是本地主机才能访问

GRANT ALL ON *.* TO 'fei'@'localhost';

  给用户分 fei 配权限  *.* 所有数据库的所有表

GRANT SELECT INSERT DELETE ON mysql.`user` TO 'feige'@'localhost';

  给用户添加指定数据库 mysql 的权限

REVOKE ALL ON *.* FROM 'fei'@'localhost';

  删除用户的权限。这里表示所有权限。

3.表的 创建、删除、查询

CREATE TABLE IF NOT EXISTS myTable(
id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, -- UNSIGNED 无符号;AUTO_INCREMENT 设置自动增长;PRIMARY KEY设为关键字;
-- PRIMARY KEY(id),
`name` VARCHAR(255) NOT NULL, -- 这里的name是系统关键字,所以这里用 反引号 包起来。正常来说字段是不加符号的,就像height之类的一样
age TINYINT UNIQUE,
height DOUBLE(3,2) DEFAULT 1.2
)

  这是创建 数据表 指令。小括号内都是表的字段。

DROP TABLE IF EXISTS myTable;

  删除 myTable 数据表

SHOW COLUMNS FROM myTable;

  显示表 myTable 的内容和结构

 4.表的字段的 删除、修改等操作

-- 修改表的名字. 这是  ALTER TABLE 以前的名 RENAME 想要的名;
ALTER TABLE tb3 RENAME tb33;

  修改表的名字.   ALTER TABLE 以前的名 RENAME 想要的名;

-- 这是同时修改多个表名,    RENAME TABLE 以前的名 TO 现在的名,想要的名 TO 想要的名;
RENAME TABLE tb1 TO tb11,tb2 TO tb22;

  这是同时修改多个表名,    RENAME TABLE 以前的名 TO 现在的名,想要的名 TO 想要的名;

-- ALTER TABLE 表名 CHANGE 旧列名 新列名 列定义 后面是可选的;    FIRST 将当前条调整到表格第一列。AFTER是调节到某一列后边
-- 这个字段在哪无所谓的,主键在最后也一样
ALTER TABLE tb33 CHANGE `name` `ueername` VARCHAR(200) NOT NULL AFTER id;

  ALTER TABLE 表名 CHANGE 旧列名 新列名 列定义 后面是可选的;    FIRST 将当前条调整到表格第一列。AFTER是调节到某一列后边
  

-- 新增一列
ALTER TABLE tb33 ADD height DOUBLE(6,2) DEFAULT 1.2;
-- 删除一列
ALTER TABLE tb33 DROP height;

  新增一列;删除一列

-- 增加多列字段
ALTER TABLE tb33 ADD(
weight DOUBLE(6,2) DEFAULT 1.2,
age int DEFAULT 22
)

  增加多列字段

5.修改约束条件

-- 删除主键约束
ALTER TABLE tb33 DROP PRIMARY KEY;
-- 增加主键约束
ALTER TABLE tb33 ADD PRIMARY KEY(age);

  增加主键约束;增加主键约束

-- 新增唯一性约束
ALTER TABLE tb33 ADD UNIQUE KEY(id);
-- 删除唯一性约束》注意删除唯一性约束时,会默认创建索引,所以删除的时候要同时删除索引。
ALTER TABLE tb33 DROP INDEX id;

  新增唯一性约束;删除唯一性约束

-- 设置默认值约束
ALTER TABLE tb33 ALTER weight SET DEFAULT 20;
-- 删除默认值约束
ALTER TABLE tb33 ALTER weight DROP DEFAULT;

  设置默认值约束; 删除默认值约束

-- 设置外键约束
ALTER TABLE tb33 ADD FOREIGN KEY (clsid) REFERENCES classes(id) ON DELETE SET NULL ON UPDATE CASCADE;
-- 删除外键约束
ALTER TABLE tb33 DROP FOREIGN KEY tb33_ibfk_1; -- 运行时有错误的,但是功能实现了,确实删掉外键约束了
-- 注意删除外键约束的时候,还要删除对应的外键索引
ALTER TABLE tb33 DROP INDEX tb33_ibfk_1;

  设置外键约束;删除外键约束

-- 他只能修改 列定义和列的位置.无法改列的名
ALTER TABLE tb33 CHANGE `ueername` VARCHAR(200) NOT NULL FIRST clsID;

  

  以上就是基本的数据库操作指令,若果有差错还请朋友们能指正,让我们共同交流。

MySql数据库基础操作——数据库、用户的创建,表的制作、修改等的更多相关文章

  1. MySQL数据库----基础操作

    一.知识储备 数据库服务器:一台计算机(对内存要求比较高) 数据库管理系统:如mysql,是一个软件 数据库:oldboy_stu,相当于文件夹 表:student,scholl,class_list ...

  2. Mysql数据库基础操作

    Mysql数据库基础操作 在mysql数据库中开启使用tab键补全功能 1)修改主配置文件/etc/mysql/my.cnf(mysql和mariadb目录有些不同) vim /etc/mysql/m ...

  3. 同一个数据库实例,不同用户下多表创建视图,Hibernate完毕ORM映射,Spring整合,后台实现

    1.同一个数据库实例.同用户,多表创建视图 2.同一个数据库实例,不同用户下.多表创建视图 3.同一个数据库,不同数据库实例,多表创建视图 4.不同类型数据库,多表创建视图 1.同一个数据库实例.同用 ...

  4. C# IV: 数据库基础操作2

    需上一篇C# III:数据库基础操作 另外一个经常碰到的数据库操作是,单次执行多个SQL语句,譬如,一次性插入多条数据. 方法一,拼凑长SQL语句 拼凑长SQL语句实际上是String的操作.如下示例 ...

  5. Pandas的基础操作(一)——矩阵表的创建及其属性

    Pandas的基础操作(一)——矩阵表的创建及其属性 (注:记得在文件开头导入import numpy as np以及import pandas as pd) import pandas as pd ...

  6. oracle 创建用户,授权用户,创建表,查询表

    原文:oracle 创建用户,授权用户,创建表,查询表 oracle 创建用户,授权用户,创建表,查询表 假设oracle10g所有的都已经安装和配置好 第一步:win+R,进入运行,cmd; 第二步 ...

  7. Cookie操作类、 包括创建、读取、修改、获取、销毁cookie

    Cookie操作类. 包括创建.读取.修改.获取.销毁cookie import java.util.Hashtable; import java.util.Iterator; import java ...

  8. 10月16日上午MySQL数据库基础操作(创建、删除)

    以前用的是鼠标在界面上手动创建,这样创建会比较麻烦,而且还会经常出问题.在其它电脑上要用的话还需要重复操作.所以要使用程序代码操作,能通过代码的就不用手动操作. 在数据库界面选择要用的数据库,双击打开 ...

  9. python---基础知识回顾(八)数据库基础操作(sqlite和mysql)

    一:sqlite操作 SQLite是一种嵌入式数据库,它的数据库就是一个文件.由于SQLite本身是C写的,而且体积很小,所以,经常被集成到各种应用程序中,甚至在iOS和Android的App中都可以 ...

随机推荐

  1. .net之DateTime

    Console.WriteLine(DateTime.Now.Year); Console.WriteLine(DateTime.Now.Month); Console.WriteLine(DateT ...

  2. Python中使用with语句同时打开多个文件

    下午小伙伴问了一个有趣的问题, 怎么用 Python 的 with 语句同时打开多个文件? 首先, Python 本身是支持同时在 with 中打开多个文件的 with open('a.txt', ' ...

  3. windows下安装Redis并部署成服务

    windows下安装Redis并部署成服务 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 一:下载 下载地址: windows版本: http ...

  4. node中创建服务进程

    背景 在node工程部署中,常常涉及到三方:本地客户端.跳板机和服务器(集群).在通过git触发gitlab hook脚本后,需要在跳板机中执行相应的ssh命令执行shell文件启动node服务器,这 ...

  5. Windows 随手笔记

    1.常见快捷方式 远程桌面 mstsc 注册表 regedit 组策略 gpedit.msc 2.Windows命令手册 ping命令 ping [-t] [-a] [-n count] [-l le ...

  6. 域名系统DNS和FTP

    域名系统概述 域名系统DNS(Domain Name System)是英特网使用的命名系统,用于把便于人们使用机器名字转化为IP地址. 为什么机器在处理IP数据报时要使用IP地址而不使用域名呢?IP地 ...

  7. TCP三次握手(建立连接)/四次挥手(关闭连接)

    TCP数据包格式 顺序号(32位):用来标识从TCP源端向TCP目的端发送的数据字节流,它表示在这个报文段中的第一个数据字节的顺序号.如果将字节流看作在两个应用程序间的单向流动,则TCP用顺序号对每个 ...

  8. Android studio 打开别人的工程

    Android Studio正确打开项目只需要两步,或者说找到两个文件进行简单的修改就好,最好在打开之前进行修改 (1)gradle-wrapper.properities,在项目下按照如下路径可以找 ...

  9. 2.从AbstractQueuedSynchronizer(AQS)说起(1)——独占模式的锁获取与释放

    首先我们从java.util.concurrent.locks包中的AbstraceQueuedSynchronizer说起,在下文中称为AQS. AQS是一个用于构建锁和同步器的框架.例如在并发包中 ...

  10. MyBatis源码解读(3)——MapperMethod

    在前面两篇的MyBatis源码解读中,我们一路跟踪到了MapperProxy,知道了尽管是使用了动态代理技术使得我们能直接使用接口方法.为巩固加深动态代理,我们不妨再来回忆一遍何为动态代理. 我相信在 ...