增删查改 mysql数据库语句

数据库
如何将单机变成联网:将数据保存部分全部统一起来,所有人操作数据都来一个地方操作
数据库的本质:其实就是一款基于网络通信的应用程序,那其实每个人都可以开发一款数据库软件,因为它仅仅就是一个基于网络通信的应用程序
也就意味着数据库软件有很多:MYSQL,oracle,db2,access,sql server,redis,mongodb,memcache
mysql参考网站:https://www.mysql.com/


bin 启动
data 数据
docs 文档
lib 公共功能
scripts 放脚本
readme 软件介绍

服务端:MySQLd.exe
客户端: mysql.exe
启动:

先切换到MySQLd所在的bin目录下,然后输入mysqld即可(命令提示符不可关闭)当做服务端
保留原来的cmd窗口,重新打开一个,链接我们刚刚创建的服务端
输入服务端的地址-h 127.0.0.1-p 3306-uroot-p这是MySQL的默认窗口
常见软件的默认端口号:

MySQL 3306
redis 6379
mongkdb 27017
django 8000
flask 5000

 

 

SQL语句初识:
1.MySQL中SQL语句是以分号作为结束的标志
2.show databases; 查看全部数据库名查看全部
3.客户端连接服务端完整命令和简写命令:
mysql-h 127.0.0.1-p 3306 -uroot-p
mysql-uroot-p
4.当我输入的命令不对,不需要执行并返回错误信息,可以用\c取消,可以不加分号
5.如何退出客户端,命令行:quit exit 退出命令加不加分号都可以
6.当在连接服务端的时候,发现只输入mysql也能连接,当时这是用不了管理员权限

 

基本SQL语句:
desc t5;查看这个表信息,名字类型等
ps:大部分程序的业务逻辑都是增删改查
针对库、表、数据的增删查改

登录:

 

mysql -uroot -p

库(文件夹):

复制代码
增:create database db1;增加库名db1
create database db2 charset='gbk';增加库名db2,格式为gbk
create database db1 charset utf8mb4;(编码)
查:show databases;查全部 show create database db1;查单个
show create database db1;查看刚刚新建的库 改:alter database db2 charset
='utf-8'; 删:drop database db2;
复制代码

 

表:

 

复制代码
要操作表,就先要找到具体的库下,所以:
查看当前所在的库的名字
select database(); 切换库:use db1就找到具体的库里,下面就开始对表操作 增:create table t1(id int,name char4)) 增加表t1,id字段必须是数字,那么必须是字符串,字符串也可以规定最大的位数,例如4

或者 在库db2下新建表t1:要操作表,就先要找到具体的库下,所以: create table db2.t1(id
int); 查看:show tables查看当前库下面所有的表名 show create table t1;
show create table db2.t1; describe t1;描述t1,会出现一张表格,描述更全,支持简写:desc t1;
删:drop table t1;
复制代码

 

字段:
 :alter table t1 modify name char(16)修改,char会变成16位 改字段类型
改表名:alter table t1 rename tt1;

 

 

 

 modify(改字段类型)

改表长度:

alter table tt1 modify name char(10); 

 

 

 

change:改表类型和名字(可以修改多条)
改表名字和长度:
alter table tt1 change name mingzi char(3);

 修改多条:

alter table t1 change id ID char,change name NAME char(4);

 

修改name为NAME 类型为char  修改name为NAME char(4)

增加字段:

alter table t1 add gender char(4); 相当于append 追加在最后面
alter table t1 add gender char(4) first; 把增加的这个字段移到最上面(增加后操作)
alter table t1 add level int after ID;把它插到ID后面 (增加后操作)

 

删除字段:

alter table t1 drop gender;

 

 

复制表结构以及表数据:

create table t2 select user,host,password from mysql.user;
查询user,host,password 从mysql的user表中 新增表t2

 

复制表结构 不要用户数据

create table t3 select user,host,password from mysql.user where 1!=1;
查询user,host,password 从mysql的user表中 筛选1!=1(即所有用户信息都不匹配) 新增到t3表中

 

 

 

 

 

 

 

数据

复制代码
先确定库---->表---->才能操作数据
增:insert t2 values(1,"zs");
insert into values(
1'zhu'),(2'qi');
 insert t2(id) values(5),(6);

 


可以增加一个或者多个,中间用逗号隔开
查:
select * from t1;查看t1所有的数据,数据量大时不建议使用
select name from t1;单独查阅name这一列的数据
select name from t2 where id=3;查t2表中id=3 的 改:update t1
set name='shasha' where id>1
update t1 set name="zz",id=444 where id=4;
把t1表id为4的名字改为zz,id改为444 删:delete
from t1 where id>1;删除id>1的 delete from t1 where name='shasha';删除name为shasha的
将表所有的数据清空:delete
from t1; 这里delete以后再插入值,id会继续增长 例如删除前是3条删除后再新增id从4开始
或者 truncate t2;这种更推荐清空表内数据,速度较快 这里清空后再插入是从1 开始
复制代码

 

 


环境变量配置及系统服务制作:
1,查看当前具体进程
tasklist
tasklist | findstr mysqld
2.如何杀死具体进程(只有在管理员cmd窗口下才能成功)taskkill//F /PID PID号
例如:终止进程8504:
taskkill /F /PID 8504

环境变量配置
每次启动mysqld需要先切换到对应的文件路径下才能操作太多繁琐,所以可以将MySQLd所在的文件路径添加到环境变量中

优化--->将MySQL服务端制作成系统服务(开机自启动)
查看当前计算机的运行进程数:
1.Windows+r 里面运行 写services.msc --☞服务
2.右键最下方一行即可查看进程
将MySQL制作成服务系统:mysqld--install
移除MySQL的系统服务:mysqld--remove
修改密码在终端输入,无需进客户端:
mysqladmin -uroot-p 原密码 password 新密码
后会出现警告和验证旧密码
遗忘密码怎么办:
1.先关闭mysql服务器,直接手动关闭停止
命令行的方式启动(让mysql跳过用户名验证功能) mysqld--skip-grant-tables
2.直接以无密码的方式连接
mysql-uroot-p直接回车
3.修改当前用户的密码,在公司直接告诉运维即可不用自己写
update mysql.user set password=password(新密码)where user='root' and host='localhost'是本地的,将用户名是root的改成新密码,不写后面这一段是将全部用户名密码改为统一新密码,不要这样做
真正存储用户表的密码字段,存储的肯定是密文
只有用户自己知道明文是什么,其他人都不知道,这样更加安全
4.立刻将修改数据刷到硬盘
flush privileges;
5.关闭当前服务器,然后以正常的校验验证授权表的形式启动
屏幕最下方 右键 任务 服务 找到mysql 开始 右键重新运行
统一编码:
mysql默认的配置文件
my-default.ini
ini结尾的一般都是配置文件
程序启动会先加载配置文件中的配置之后才真正的启动
[mysqld] 一旦服务端启动立刻加载下面的配置
sql_mode=NO_ENGINE_SUBSTITUTION,SRANS_TABLES
[mysql]一旦客户端启动立刻加载下面的配置
[client]其他客户端
需要先自己新建一个my.ini的配置文件
验证配置是否真的是自动加载
[mysql]
print('hello Word')
修改配置文件之后一定要重启服务才能生效
把字符编码改成utf-8,写在my.ini里面:
[mysqld] #服务端
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]#客户端
default-character-set=utf8
统一编码的配置无需掌握,直接拷贝即可
Ctrl+s 保存 再重新启动 再链接
\s查看编码是否统一
偷懒:将管理员的用户名的密码也添加到配置文件中,在mysql下写:
user="root"
password=自己的密码
后输入mysql可以直接进来mysql-uroot-p查看库名

 
posted @   朱饱饱  阅读(17)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示