MySql数据库基础操作——数据库用户的创建,表的制作修改等
Posted Mr.聂
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySql数据库基础操作——数据库用户的创建,表的制作修改等相关的知识,希望对你有一定的参考价值。
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数据库基础操作——数据库用户的创建,表的制作修改等的主要内容,如果未能解决你的问题,请参考以下文章