mysql 对表的基本操作

本文详细介绍了如何使用SQL语句对MySQL数据库进行操作,包括创建表、添加/修改/删除字段、更改表名、删除表、以及数据的增删改查。同时,文章还阐述了如何使用mysqldump工具进行数据库备份和数据恢复,以及各种高级查询技巧如模糊查询、排序和分页查询。
摘要由CSDN通过智能技术生成

对表进行操作之前我们先创建一个表

CREATE TABLE students(

id VARCHAR(200) COMMENT '学生id',

name VARCHAR(20) COMMENT '学生姓名',

gender VARCHAR(1) COMMENT '学生性别');

对数据库字段的操作

1.添加列

ALTER TABLE students ADD 字段名 类型;

ALTER TABLE students ADD phone INT;

2.队列的类型进行修改

ALTER TABLE students MODIFY  字段名 新的类型;

ALTER TABLE students MODIFY id INT;

通过DESC 表名; 查看表结构

 3.修改字段名 和 类型

ALTER TABLE students CAHNGE 旧的字段名 新的字段名 类型;

ALTER TABLE students CHANGE name Name varchar(20);

4.删除列

ALTER TABLE students DROP 字段名;

ALTER TABLE students DROP phone;

5.修改表名

a. RENAME TABLE 旧表名 TO  新表名;

RENAME  TABLE students TO stu;

b. ALTER TABLE 旧表名 RENAME TO 新表名;

ALTER TABLE stu RENAME TO stus;

6.删除表

drop table 表名;

7.截断表 删除之后 创建一个新表

truncate table 表名;

8.复制表

CREATE TABLE 复制的表 LIKE 被复制的表

CREATE TABLE stus_copy LIKE stus;

被复制的表如果不在当前数据库使用.操作符

CAEATE TABLE 复制的表 LIKE 数据库.被复制的表;

对数据库中数据的操作(增删改查)

1.INSERT 插入(插入多条数据用逗号隔开)

INSERT INTO 数据库表 (要插入数据的字段名) VALUES(插入数据)

INSERT INTO stus (id,Name,gender) values (1,'kiana','Female'),(2,'xiao','Male'),(3,'abeido','Male');

2.DELETE 删除

DELETE FROM 表名 WHERE 条件;

DELETE FROM stus WHERE id=3;

 

3.UPDATE 修改

UPDATE 表名 SET WHERE 条件;

UPDATE stus SET name= 'XIAO' WHERE id =2;

 

4.INSERT 查询

查询所有--SELECT * FROM stus;

 

条件查询--SELECT * FROM stus WHERE id =2;

 

查询单个字段--SELECT id FROM stus;

 

查询单个字段单条数据--SELECT Name FROM stus WHERE id=1;

查询数据是字段名Name字段数据显示为小写--SELECT  LOWER(Name) FROM stus;

将显示的字段名改为name-- SELECT LOWER(Name) AS name FROM stus;

剔除重复行--distinct

select distinct from stus;

剔除单个字段一样的数据

select distinct 字段名 from stus;

数据的备份(mysqldump)

数据备份所用到的参数(mysqldump在命令提示窗口使用,不在数据库中使用)

参数名

简写

含义

-host

-h

主机地址

-post

-P

端口号

-user

-u

用户名

-password

-p

密码

-database

-B

指定要复制的数据库

--all-databases

-A

备份mysql服务器上的所有数据库

--no-data

-d

不备份数据,默认为备份数据

--comments

-i

是否有信息备注,默认是打开的,使用—skip-comments关闭

1.备份数据库中的表

mysqldump -uroot -p 数据库名 要备份的表名默认为所以(多个是逗号隔开)>路径\xxx.sql

mysqldump -uroot -p 1111 stus >d:\kfm\3.0.sql

2.只备份表结构不备份数据

mysqldump -uroot -p -d 1111 stus > d:\kfm\3.0.sql

3.备份多个数据库

mysqldump -uroot -p  --databases 数据库1,数据库2,... > 路径

4.备份所有数据库

mysqldump -uroot -p --all -databases >路径

5.将查询的结果保存到文件中(-e为指定要运行的SQL语句)

mysql -uroot -p  -e "select * from 1111.stus" > d:\kfm\3.0.txt

mysql -uroot -p -e "update 表名 set 修改的数据 where 条件" >路径

6.还原数据结构和数据

在数据库中使用source 地址(生成sql的地址)

source D:\kfm\3.0.sql;(在mysql中执行)

mysql -uroot -p 新数据库名<路径(D:\kfm\3.0.sql)

条件查询进阶1

1.between 条件1 and 条件2;

select * from 表 where 字段名 between 条件1 and 条件2;

2.and (都符合)

select * from where 字段名 条件 and 条件 and.......;

3,or (否和1个即可)

select * from where 字段名 条件 or 条件 or ......;

4.in(如果在就能查出)

select * from where 字段名 in ();

5.对于NULL的判断

select * from where 字段名 is null;(判断为空)

select * from where 字段名 is not null;(判断为非空)

6.算术运算

select 字段1 + 字段2 from 表;

update 表 set 字段=字段+值 where 条件;

7.模糊查询(%占位符)

select * from 表 where 字段名 like “%查询的关键字%”;(只要被查询的数据含有关键字都能查到);

select * from 表 where 字段名 like “查询的关键字%”;(只能查询以关键字开头的数据);

select * from 表 where 字段名 like “%查询的关键字”;(只能查询以关键字结尾的数据);

8.逻辑运算(> = <)

select *from 表 where 字段名 > value;

9.排序(order by)

select * from 表 where order by 字段 ASC(升序);

select * from 表 where order by 字段 DESC(降序);

select * from 表 where order by 字段1 DESC(降序),字段 ASC(升序);(字段1进行降序数据相等时,用字段2的数据进行升序排列)

10.分页查询 LIMIT用于限制返回的行数,而OFFSET用于指定起始行的偏移量。

select * from 表   limit A,B;(A为从第A-1个数据开始显示,B为显示的条数)

select * from 表 limit A offset B;(limit控制每页显示几条数据,offset 用来控制显示第几页(偏移量))

OFFSET = (页数 - 1) * 每页行数

例如 每页显示10行,显示第四页

select * from 表 limit 10 offset 30;

11.单行函数

length();显示字段长度

select length(字段名) from 表;

concat(A,B);字符串拼接

select concat(A,B ) as 起别名 from 表 where 条件;

lower();转为小写                           upper();转为大写

select concat(lower(A),upper(B)) from 表;

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值