加入收藏 | 设为首页 | 会员中心 | 我要投稿 辽源站长网 (https://www.0437zz.com/)- 云专线、云连接、智能数据、边缘计算、数据安全!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

数据库学习(三)—— SQL数据操作(增删改查)

发布时间:2023-06-29 14:02:58 所属栏目:MySql教程 来源:网络
导读: 目录

前言 SQL语言 SQL语言编写和运行
鼠标左键点击某个数锯库下面的查询按钮。然后点击新建查询



需要保证程序员给的代码,能看懂
一、数据表操作
1.1 创建表
create table 表名(
字段

目录

mongodb $both 插入数据_数据库插入操作_mysql 存储过程 批量插入数据

前言 SQL语言 SQL语言编写和运行

鼠标左键点击某个数锯库下面的查询按钮。然后点击新建查询

mysql 存储过程 批量插入数据_数据库插入操作_mongodb $both 插入数据

mysql 存储过程 批量插入数据_数据库插入操作_mongodb $both 插入数据

mysql 存储过程 批量插入数据_mongodb $both 插入数据_数据库插入操作

需要保证程序员给的代码,能看懂

一、数据表操作

1.1 创建表

create table 表名(

字段名 类型 约束,

字段名 类型 约束,

...

例1:创建学生表,字段要求如下;

姓名(长度为10)

-- create table 表名(
-- ????????字段名 类型? 约束,
-- 
-- ????????字段名 类型? 约束,
-- 
-- ????????...
-- 
-- )
-- 注释: ctrl + /
-- 取消注释屏蔽: ctrl + shift + /
-- 例:创建学生表,字段要求如下;
-- 姓名(长度为10)
create table students(
	name varchar(10)
)

mongodb $both 插入数据_mysql 存储过程 批量插入数据_数据库插入操作

mysql 存储过程 批量插入数据_mongodb $both 插入数据_数据库插入操作

例2:创建学生表,字段要求如下:

姓名(长度为10),年龄

-- 例:创建学生表,字段要求如下:
-- 姓名(长度为10),年龄
-- 
create table students2(
	name varchar(10),
	age int
)

mysql 存储过程 批量插入数据_mongodb $both 插入数据_数据库插入操作

例子3 :无符号

-- 例:创建学生表,字段要求如下:
-- 姓名(长度为10),年龄
-- 
create table students2(
	name varchar(10),
	age int unsigned
)

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

例4: 创建学生表,字段要求如下:

姓名(长度为10),年龄,身高(保留小数点2位),带主键

-- ?例3: 创建学生表,字段要求如下:
-- 
-- 姓名(长度为10),年龄,身高(保留小数点2位),带主键
create table students3(
id int unsigned primary key auto_increment,
	name varchar(10),
	age int unsigned,
	heighe decimal(5, 2)
)

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

1.2删除表

格式一: drop table 表名

格式二:drop table if exists 表名

例:删除学生表

drop table students

drop table if exists students

1??方法一:drop table students

第一步:检查未删除的情况

mongodb $both 插入数据_数据库插入操作_mysql 存储过程 批量插入数据

第二步:输入删除命令,检查数据表是否删除

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

第三步:若数据表被删除,则使用drop table students会被警告

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

2?? 方法二:drop table if exists students

若数据表本身不存在,并不会报错

mysql 存储过程 批量插入数据_数据库插入操作_mongodb $both 插入数据

第一步:方法二来进行数据表删除

mysql 存储过程 批量插入数据_数据库插入操作_mongodb $both 插入数据

方法二的使用:

注意: 创建表之前,先删除再次创建,万一表存在。

mysql 存储过程 批量插入数据_mongodb $both 插入数据_数据库插入操作

第一步:表3原本存在,就算创建会覆盖原来,且用方法二存在的数据表也不会报错

数据库插入操作_mysql 存储过程 批量插入数据_mongodb $both 插入数据

drop table if exists students3;
create table students3(
id int unsigned primary key auto_increment,
	name varchar(10),
	age int unsigned,
	heighe decimal(5, 2)
)

注意: 多条SQL语句,每句结束需要添加分号,最后一句不要

需要注意的小细节

注意代码未运行前“原先表3有数据”,

mongodb $both 插入数据_mysql 存储过程 批量插入数据_数据库插入操作

但进行更新之后数据消失了,说明重新新建一个新的表3

mongodb $both 插入数据_mysql 存储过程 批量插入数据_数据库插入操作

二、数据操作 -- 增删改查 2.1 简单查询(后面会详细介绍,此处略写)

select * from 表名

例子:查询所布学生致据

select * from students

mongodb $both 插入数据_数据库插入操作_mysql 存储过程 批量插入数据

2.2 添加数据

插入一行数据

insert into students3 values(0, 'JOM', 12, 3.2)

insert into students3 values(default, 'JANE', 12, 3.2)

insert into students3 values(null, 'Tom', 12, 6.2)

给部分字段设置数据

insert into students3(name) values('TLL')

insert into students3(name, age) values('AMY',30)

执行多条语句插入多条数据

insert into students3 values(null, 'Tom1', 12, 6.2);

insert into students3 values(null, 'Tom2', 12, 6.2)

执行一条语句插入多条数据

insert into students3 values(null, 'RR', 12, 6.2),(null, 'AA', 12, 6.2)

2.2.1 添加一行数据

格式一;所有字段设置值,值的顺序与表中字段的顺序对应

insert into 表名 values(..)

例:插入一个学生,设置所有字段的信息

数据库插入操作_mysql 存储过程 批量插入数据_mongodb $both 插入数据

注意:varchar型和日期均用单引号,来实现。

id主键:则可以写default,0, null

insert into students3 values(0, 'JOM', 12, 3.2)

mysql 存储过程 批量插入数据_mongodb $both 插入数据_数据库插入操作

insert into students3 values(default, 'JANE', 12, 3.2)

insert into students3 values(null, 'JANE', 12, 6.2)

得数据表:

mongodb $both 插入数据_mysql 存储过程 批量插入数据_数据库插入操作

格式二:部分字段设置值。值的顺序与给出的字段顺序对盛,给指定字段设置数据

insert into 表名(字段1,-.-)values(值1,.,)

例:插入一个学生。只设置姓名

insert into students3(name) values('TLL')

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

例:插入一个学生。只设置姓名、年龄

-- insert into students3(name) values('TLL')
insert into students3(name, age) values('AMY',30)

mongodb $both 插入数据_mysql 存储过程 批量插入数据_数据库插入操作

加多条的,多个SQL语句,加分号

 insert into students3 values(null, 'Tom1', 12, 6.2);
  insert into students3 values(null, 'Tom2', 12, 6.2)

mongodb $both 插入数据_数据库插入操作_mysql 存储过程 批量插入数据

往表中某一字段插入数据,一条语句添加多条记录

insert into students3(name) values('TLL1'),('TLL2'),('TLL3'),('TLL4')

数据库插入操作_mysql 存储过程 批量插入数据_mongodb $both 插入数据

问: 若没有指定名称,没有指定字段怎么一条语句创建多条数据?

ANS:

insert into students3 values(null, 'RR', 12, 6.2),(null, 'AA', 12, 6.2)

mysql 存储过程 批量插入数据_数据库插入操作_mongodb $both 插入数据

注意:

一条语句比多条少些一些代码,多条语句会让后端执行多次,一条语句的效率高些。

2.3 修改

格式: update 表名 set 列1=值1, 列2 = 值2.. .. where 条件

例:修改id为5的学生数据,姓名改为狄仁杰,年龄改为20

update students set name="狄仁杰", age=20? where? id=5

-- 格式: update 表名 set? 列1=值1,? 列2 = 值2.. ..? ?where? ?条件
update students3 set age = 20

mongodb $both 插入数据_数据库插入操作_mysql 存储过程 批量插入数据

可写id = 5 或 name = ‘TLL’

update students3 set age = 60 where id = 5

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

update students3 set name = 'APPLE', age = 30, heighe = 5.99 where id = 6

mysql 存储过程 批量插入数据_数据库插入操作_mongodb $both 插入数据

2.4删除 2.4.1 删除(不轻易使用)

格式:delete from 表名 where条件

例:删除id为6的学生数据

delete from students where id=6

delete from students3

mongodb $both 插入数据_数据库插入操作_mysql 存储过程 批量插入数据

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

-- 格式:delete from? 表名 where条件
delete from students3 where   id = 2

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

注意: id越变越大,用过的将不会重新使用

数据库插入操作_mongodb $both 插入数据_mysql 存储过程 批量插入数据

2.4.2 逻辑删除

逻辑删除︰对于重要的数据,不能轻易执行delete语句进行删除,一旦删除,数据无法恢复,这时可以进行逻辑删除。

给表添加字段,名字叫做isdelete ,int类型。代表数据是否删除:0代表未删除,1代表删除,默认值为0把表中所有数据isdelete字段改为0.当想要删除某条数据时,使用update语句 只需要把某条数据的isdelete字段为1,设置这条数据的isdelete字段为1

update students3 set isdelete = 1 where id = 1

在查询数据时,只查询出isdelete为0 的数据

?select * from students3 where isdelete = 0

mongodb $both 插入数据_mysql 存储过程 批量插入数据_数据库插入操作

-- isdelete = 0 代表数据未被删除
update students3 set isdelete = 0

mysql 存储过程 批量插入数据_数据库插入操作_mongodb $both 插入数据

update students3 set isdelete = 1 where id = 1

mysql 存储过程 批量插入数据_mongodb $both 插入数据_数据库插入操作

select * from students3 where isdelete = 0

例:

1、给学生表添加字段(isdelete)。默认值为0,如果表中已经有数据,需要把所有数据的isdelete字段更新为 0

update students set isdelete = 0

2、删除id为1的学生

update students set isdelete=1 where id=1

3、查询来删除的数据

select * from students where isdelete

注意:

像qq、微信、京东等提供永久注销的功能数据库插入操作,并不是真正将其删除,而是将其禁用了,并没有真正的将其删除,还可以后悔。

看见isdelete / is del 的字段代表逻辑删除

(编辑:辽源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章