Mysql数据库管理

Mysql数据库管理

  • 一、Mysql数据库管理
    • 1.常用的数据类型:
    • 2.查看数据库结构
      • 1.查看当前服务器中的数据库
      • 2.查看数据库中包含的表
      • 3.查看表的结构(字段)
  • 二、SQL语句
      • 1.创建和删除数据库和表
        • 1.创建新的数据库
        • 2.创建新的表
      • 2.管理表中的数据记录
        • 1.向数据表中插入新的数据记录
      • 3.修改、更改数据表中的数据记录
      • 4.查询数据记录
  • SQL语句阶段总结
    • DDL 用于创建数据库对象: 库 表 索引
    • DML 用于管理表数据
    • DQL 用于根据条件查询表数据

一、Mysql数据库管理

基础模式

数据库–>数据表–>行(记录):用来描述一共对象的信息
数据库–>数据表–>列(字段):用来描述对象的一个属性
mysql数据库的端口号是3306
在Linux中查看端口号可用:netstat -lntp | grep 3306 来查看
在这里插入图片描述

1.常用的数据类型:

int:整型  无符号[0,2^32-1],有符号[-2^31,2^31-1]
float:单精度浮点 4字节32double:双精度浮点 8字节64char:固定长度的字符类型
varchar:可变长度的字符类型
text:文本
image:图片
decimal(52):5个有效长度数字,小数点后面有2

2.查看数据库结构

登录mysql :mysql -u root -p 密码
root是用户
在这里插入图片描述

1.查看当前服务器中的数据库

SHOW DATABASES;  #大小写不区分,分号“;”表示结束

在这里插入图片描述

2.查看数据库中包含的表

use 数据库名;   #切换到我们需要去的库中
show table;   #查看我们所在库中的所有表

在这里插入图片描述

3.查看表的结构(字段)

use 数据库名;
describe [数据库名字.] 表名;
可以缩写成:desc表名;  #切换到表中

在这里插入图片描述

扩展:即使我们不去use 数据库名到我们需要去的数据库中也是可以去看这个库中的表的
只需:use tables from数据库名;
在进行desc 数据库名.表名即可
在这里插入图片描述
在这里插入图片描述

二、SQL语句

SQL语句用于维护管理数据库,包括数据查询、数据更新、访问控制、对象管理等功能、

SQL语言分类:
DDL:数据定义语言,用于创建数据库对象,如库、表、索引等
DML:数据操纵语言,用于对表中的数据进行管理
DQL:数据查询语言,用于从数据表中查找符合条件的数据记录
DCL:数据控制语言,用于设置或者更改数据库用户或者角色权限

1.创建和删除数据库和表

1.创建新的数据库

create database 数据库名;   #创建数据库
drop database 数据库名;     #删除数据库

在这里插入图片描述
因为我们这边是管理员用户所以删库并没有限制,若是普通用户则有限制

2.创建新的表

create table 表名 (字段1 数据类型,字段2 数据类型[,....][,primary key(主键名)]);
#主键一般选择能代表唯一性的字段,不允许取空值(null),一个表只能有一个主键。
例:
create database banji;
use banji;  z#注意,要先切换到库中才可以创建表
create table x38 (id int NOT NULL,name char10) NOT NULL,score decimal(52,passwd char(48) DEFAULT '',paimary key(id));
#这边注意 id字段就是我们所设置的主键,他的后面字段就不可以为空也不可以重复。
#没有指定的字段都为null,即空
desc x38;   #查看我们创建的表例子:
create table x38 (id int, name char(4), age int, sex char(2)); 
#创建x38表,这里注意,创建表不可以纯数字
drop table x38;         #删除表;
如果不在库中删除,那么直接用命令
drop table 数据库名.表名;
这边的话就是:
drop table banji.x38 
#即可删除banji库中的x38表

在这里插入图片描述

在这里插入图片描述

2.管理表中的数据记录

1.向数据表中插入新的数据记录

insert into 表名[字段1,字段2[,....]) values( 字段1的值,字段2的值,...;例子:
insert into x38 (id,name.score,passwd) values(1,'zhangsan',70.5,password('123456'));
#password('123456'):查询数据记录时,密码字串以加密形式显示:若不使用passwrod(),查询时以明文显示。insert into x38   values{2,'lisi',90.5654321);
select * from x38; 
#查询表所有的数据记录
  • 插入数据insert into 表 。。。。
    在这里插入图片描述
  • id是我们所设置的主键key,添加数据的话不可以忽略id,可以选择添加别的,但是id必须添加
  • 这边查询的话是select * from 表名查看所有数据

在这里插入图片描述

  • 插入数据insert into 表名 后面直接values(跟上要直接加入的数据)也是可以的,按顺序即可,这是不指定字段的情况

在这里插入图片描述

3.修改、更改数据表中的数据记录

UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] [WHERE 条件表达式];例:
UPDATE KY08 SET passwd=PASSWORD('') WHERE name='zhangsan';
UPDATE KY08 SET  name='wangxiaoer',passwd='' WHERE id=3;DELETE FROM 表名 [WHERE 条件表达式];例:
DELETE FROM KY08 WHERE id=4;  # 删除指定的数据

在这里插入图片描述

在这里插入图片描述

4.查询数据记录

select 字段名1,字段名2[,...] FROM 表名 [WHERE 条件表达式];
例:
SELECT * FROM KY08;
SELECT id,name,score FROM KY08 WHERE id=2;select name from KY08\G					#以列表方式竖向显示
select  *from KY08 limit 2;				#只显示头2行
select * from KY08 limit 2,3;			#显示第2行后的前3

在这里插入图片描述

在这里插入图片描述

SQL语句阶段总结

DDL 用于创建数据库对象: 库 表 索引

create database 库名;
use 库名;
create table 表名 (字段1 数据类型, 字段2 
数据类型, ... [,primary key (字段)]);drop table 表名;   #删除
drop database 库名;show databases;          #查看表
show tables [from 库名];
desc [库名.]表名;         #查看表结构

DML 用于管理表数据

insert into 表名 values (字段1的值, 字段2的值, ....);    #要按照表结构的字段顺序设置值
insert into 表名 (字段1, 字段2, ...) values (字段1的值, 字段2的值, ...);update 表名 set 字段=, ... where 条件表达式;delete from 表名 where 条件表达式;  #删除指定的数据

DQL 用于根据条件查询表数据

select * from 表名 [where 条件表达式];
select 字段1,字段2,... from 表名 [where 条件表达式];select * from 表名\G     #纵向查看每行记录字段的值select * from 表名 limit N;   #显示表的前N行记录
select * from 表名 limit N,M;   #显示表的从第N行之后的连续M行记录(不包含第N行)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/6080.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LabVIEW开发呼吸分析系统

LabVIEW开发呼吸分析系统 在日常生活中,许多人都在练习调息法,但大多数人都不知道如何以完美的方式做。不当的做法不会带来适当的结果。一种使用LabVIEW分析呼吸信号的方法,以使人们以完美的方式练习调息。这有助于从业者按照系统指定的说明…

规划电子类专业生涯:打造单片机/嵌入式技术专家之路

如果我是一个电子类专业的学生,打算将来从事单片机/嵌入式方向的职业,我可能会采取以下步骤来规划我的职业生涯: 学术准备:我将全面学习电子工程的基础知识,包括模拟电子、数字电子、信号处理等方面的知识。我会确保自…

C++课程学习记录

目录 1. 前置说明2. 二叉树的模拟2.1 参考资料2.2 二叉树的构建2.2.1 递归构建2.2.2 迭代构建 2.3 二叉树的遍历2.4 二叉树的应用 3. 继承与派生3.1 最简单的生死3.2 动态申请空间的生死3.3 继承中的protectd权限3.4 三种继承方式3.5 修改某些继承成员的继承类型3.6 多级派生3.…

前端搭建名言生成器(内含源码)

目录 前言 名言生成器 页面搭建 功能实现 前言 今天呢我们来给大家展示的,就是一个非常非常简单的名言生成器, 那么它的功能的非常简单,就是我们通过点击按钮,然后可以生成名人名言,然后我们也可以点击按钮将它分享到…

力扣算法刷题Day54|休息日总结:动态规划之股票问题

股票问题 〉题型分类 股票问题 〉解题思路 〉方法论 确定dp数组(dp table)以及下标的含义 枚举股票买入/持有/卖出/不持有/冷冻期等所有可能状态分析哪些状态能合并,哪些需要分开考虑定义二维数组dp[i][j],其中i表示第i天&#x…

C++ Primer(读书笔记)

C源文件通常以.cc、.cxx、.cpp、.cp、.C作为后缀来命名 C语言未定义输入输出语句&#xff0c;而是提供了一个全面的标准库来提供IO机制&#xff0c;对应 iostream、fstream、sstream std::cout<<"Enter Two Numbers"<<std::endl;&#xff0c;这条语句执…

HoloLens2与Unity的Socket通信踩坑日记

最近想让Hololens中获取电脑中更新的数据&#xff0c;打算使用套接字的方式进行通信&#xff0c;明明在unity中模拟测试可以进行正常通信&#xff0c;但是将软件部署到HoloLens上通信总是失败&#xff0c;找了很久的原因&#xff0c;找了很久的原因&#xff0c;终于能够正常通信…

C/C++内存管理(内存分布、动态内存分配、动态内存分配与释放、内存泄漏等)

喵~ 内存之5大区&#xff08;栈区、堆区、静态区、常量区、代码区&#xff09;C/C中各自的内存分配操作符内存泄露?内存泄漏检测方法 内存之5大区&#xff08;栈区、堆区、静态区、常量区、代码区&#xff09; 1、栈区&#xff08;stack&#xff09;&#xff1a;由编译器自动分…

与彭老师交流(北京大学 心理与认知科学学院)

交流&#xff1a;主要是了解人家在做什么对什么感兴趣&#xff0c;和让人家知道你在做什么对什么感兴趣&#xff0c;然后你觉得未来可以做什么有价值的事情。 1.老师做的方向里面有包含利用人工智能这一块的知识&#xff0c;我觉得我是可以做的&#xff0c;机理这一块的东西我不…

三、Docker命令及基本使用

学习参考&#xff1a;尚硅谷Docker实战教程、Docker官网、其他优秀博客(参考过的在文章最后列出) 目录 前言一、帮助启动类命令1.1 启动docker1.2 停止docker1.3 重启docker1.4 查看docker状态1.5 开机启动1.6 查看docker概要信息1.7 查看docker总体帮助文档1.8 查看docker命令…

LLM - ChatGLM-6B (General Language Model) 的工程配置

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://blog.csdn.net/caroline_wendy/article/details/131104546 Paper&#xff1a;GLM: General Language Model Pretraining with Autoregressive Blank Infilling ChatGLM是通用的预训练语…

网络基础一

网络发展 独立模式&#xff1a;计算机之间相互独立。 网络互联&#xff1a;多台计算机连接在一起&#xff0c;完成数据共享。 局域网LAN&#xff1a;计算机数量更多了&#xff0c;通过交换机和路由器连接在一起&#xff1b; 广域网WAN&#xff1a;将远隔千里的计算机都连在…