mysql库表操作

mysql库表操作

关系型数据库:

Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL

非关系型数据库:

NoSql、Cloudant、MongoDb、redis、HBase

创建mysql账户

第一步:

必须要先进入mysql

create user 'xiaoqi'@'%'identified by 'qwe123';

# % :指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,

如果想让该用户可以从任意远程主机登陆,可以使用通配符%

第二步:

给他所有权限:

grant all on *.* to 'xiaoqi'@'%';

#用户的操作权限,如SELECT,INSERT,UPDATE等,如果要授予所的权限则

使用ALL

# *.* 所有库.所有表

刷新:

flush privileges; # 权限

select user(); # 查看当前用户

删除

drop user

drop user "qiye"@"%";  # 退出再进就没了

MySQL库操作

# 每句话写完之后,都要以英文;结尾

select database(); # 查看当前在哪个数据库

create database mydb; # 创建数据库,在没有创建数据库之前(没有同样的数据库)可以新增数据库,如果该数据库已存在,则报错

# 要保证不报错,需要加if not exist

create database if not exists mydb; # 没有该数据库就给我创建,有就不创建

# 我现在在这个库里没有?

select database();

drop database 库名; # 删库跑路 用户 表格

# 使用数据库

use 数据库名;

select now(); # 获取当前时间

show create table xingyue; # 查看表结构

MySQL表数据操作

# 插入数据

insert into xingyue(id,name) values(1, 'xiaoming'),(2,'qiyue');

# 插入多条数据

insert into xingyue(id,name) values(2,'xiaowang'),(3,'lili');

# 不指名字段,就是要插入全字段,有多少字段就要插入多少,少一个都不行

insert into xingyue value(4,'xiaoli');

# values加不加s都能插入多个,不过加s书写更规范些

# 只能插入单挑数据

insert into xingyue set id=5,name='haha'

# into 可加可不加

insert xingyue set id=6,name='qiye';

#查询语句select

# 查询在xingyue表格里面的所有字段名的内容

select * from xingyue;

#条件查询

# 提取id号小于4的所有数据

select id from xingyue where id < 4;

# 在xingyue表格当中,提取名字

select name from xingyue;

# 更新数据update

# 更新在xingyue表格中id号为2的整行数据

update xingyue set name='heihei' where id = 2;

# 如果where id = 2这个条件不加的话,默认会更新表中所有数据

就比如: update xingyue set name='heihei';

这样会在xingyue的表格当中更新所有的name,那整张表格,name字段的值都变成了heihei

# 删除数据

# 删除id号为4的那行数据

delete from xingyue where id=4;

# 如果要删除整张表格里面的数据,那就不需要加后面的where条件

delete from xingyue;

select * from xingyue; # 什么数据有没有了

# 创建新表

create table old_tb (id int,name char(10),age char(4));

show create table tb_name;

# 修改表名

# 但凡英语好点的都知道,rename是重新命名的意思(re有重复的意思,name是名字的意思),这里用到了关键字alter table和rename to,old_tb是老的表名,new_tb是新表名的名字

alter table old_tb rename to new_tb;

# 查看表名是否已经改变

show tables; # 已经改名字了

# 改字段

alter table new_tb change column id new_id int;

# 修改字段类型

# 运用到新关键词modify,就是修改的意思,column是列的意思,所以这句话顾名思义就是在讲修改new_tb表格中的字段name的类型,修改成varchar类型,长度设置为10

# varchar(10) 字符 有多少就算多少 10个字节

# char(10) 没有10个会用空格补齐到10个

alter table new_tb modify column name varchar(10);

alter table new_tb add sex int;

# 删除 drop

# 删除字段

# 删除在new_tb表格里面的sex字段

alter table new_tb drop sex;

# 创建表格t1,包含int类型的id字段和float浮点型的qq字段,第一个数字 3 表示总共的有效数字数量,也就是整个数字(不包括小数点)的位数。第二个数字 3 指的是小数点后的位数。

#如 FLOAT(5,2),这里 5 代表总共的有效数字个数,2 代表小数点后的数字个数。因此一个例子可能是 999.99

create table t1(id int, qq float(3,3));

# 查看表结构

desc t1;

# 插入数据12321和0.22222

insert into t1 value(12321,0.22222);

# 这条语句创建了一个名为 qiye 的表,表中有一个名为 time 的列,数据类型为 timestamp。如果没有指定默认值,timestamp 列的默认行为是在插入新记录时自动设置为当前时间。

create table qiye(time timestamp) #默认增加创建时间

# 这条语句将一条新记录插入到 qiye 表中。在此操作中,default 关键字会触发 MySQL 使用 time 列的默认值,即当前的时间戳。

insert into qiye values(default);

# 这条语句的效果与前一条语句相同。由于没有提供任何值,MySQL 将使用所有列的默认值。这对于 timestamp 类型的列,默认是当前时间。

insert qiye values(); # 也能直接增加

# 这条语句创建了一个名为 baye 的表,有两个列:id 和 time。其中,id 列是整数类型,time 列是 timestamp 类型,且默认值设置为 current_timestamp。这意味着如果没有为 time 列指定一个值,MySQL 将自动使用当前时间。

create table baye(id int,time timestamp default current_timestamp)

# 这条语句插入了一条新记录到 baye 表中,id 列的值设置为 1,而 time 列使用默认值,即当前时间。使用 default 明确指明要使用列的默认值。

insert into baye(id,time) values(1,default);

# 这些内容,大多以记忆为主,主要是需要记住数据库已经表格的关键字已经用法,很少涉及到什么逻辑之类的内容(只有查询那块知识有一点逻辑相关的)

# 希望大家共同努力一起学习,如果里面有讲的有错误的地方,也希望大家指正!!!

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在docker中操作mysql并创建库表,您可以按照以下步骤进行操作: 1. 首先,通过docker命令查看所有正在运行的实例。使用命令`docker ps`可以列出正在运行的docker容器实例。 2. 运行一个mysql容器,并将它映射到主机的3306端口。您可以使用以下命令来创建并运行mysql容器: ``` docker run -d -p 3306:3306 --name mysql -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql ``` 3. 进入mysql容器。通过以下命令进入正在运行的mysql容器: ``` docker exec -it <CONTAINER_ID> /bin/bash ``` 其中,`<CONTAINER_ID>`是mysql容器的ID。 4. 在mysql容器中,您可以使用mysql客户端来创建库表。运行以下命令以启动mysql客户端: ``` mysql -u root -p ``` 输入之前设置的root密码(在上面的示例中为123456)。 5. 进入mysql客户端后,您可以使用标准的mysql语句来创建库表。例如,要创建一个数据库,可以运行以下命令: ``` CREATE DATABASE mydatabase; ``` 要在该数据库中创建表,可以使用`USE`语句选择该数据库,然后使用`CREATE TABLE`语句创建表格。 请注意,这些步骤假设您已经安装并配置了docker,并且已经下载了mysql镜像。此外,您还需要调整命令中的路径和参数以适应您的环境和需求。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Docker 安装MySql后创库、创表](https://blog.csdn.net/Lin_FFF/article/details/128436646)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值