数据库的增删改查
我使用的是Northwind数据库来进行说明和显示
一、查询---select
一、简单查询
select 的语法:select 列名称 from 表名称 (其中 * 代表选择显示全部的列)
例如:结果:select * from Region
![]()
结果:select RegionID from Region
![]()
Distinct (防止重复输出数据)
语法 SELECT DISTINCT 列名称 FROM 表名称
二、带有条件的查询 where
语法 : select 列名称 from 表名称 where 列 运算符 值
(运算符有=、<=、!=、>=、<、>、<>、like、between)
例如: =
select EmployeeID,LastName,FirstName from Employees where EmployeeID=1 /*查询EmployeeID等于1的数据
结果:
![]()
<=
结果:select EmployeeID,LastName,FirstName /*查询EmployeeID 小于4的数据*/ from Employees where EmployeeID<=4
![]()
like
结果:select EmployeeID,LastName,FirstName /*查询LastName首字母为F的数据*/ from Employees where LastName like 'F%'
![]()
between
结果:select EmployeeID,LastName,FirstName /*查询EmployeeID 在1到9之间的数据(包含1和9)*/ from Employees where EmployeeID between 1 and 9
![]()
AND(前后两个条件需要全部成立)
结果:select EmployeeID,LastName,FirstName /*查询TitleOfCourtesy='Mr.' 并且 LastName='Buchanan'*/ from Employees where TitleOfCourtesy='Mr.' and LastName='Buchanan'
![]()
OR(前后任意一个条件成立即可)
结果:select EmployeeID,LastName,FirstName /*查询TitleOfCourtesy='Mr.' 或者 LastName='Buchanan'*/ from Employees where TitleOfCourtesy='Mr.' or LastName='Buchanan'
![]()
ORDER BY(根据 相应的列来进行排序 )默认升序(asc),同样的可以设置降序(desc)
例如:
select EmployeeID,LastName,FirstName /*查询TitleOfCourtesy='Mr.' 或者 LastName='Buchanan'*/ from Employees where TitleOfCourtesy='Mr.' or LastName='Buchanan'
结果:
![]()
同样的查询时可以配合表的连接来实现更多效果,在此就不列出了。
二、INSERT 插入数据
语法: INSERT INTO 表的名称 values(值1,值2,值3...)
或者可以指定特定的列来进行插入数据操作
INSERT INTO table_name (列1,列2,......) VALUES (值1,值2,.....)
INSERT INTO table_name (列1,列2,......) VALUES (值1,值2,.....),(值3,值4),(值5,值6)
例如:
插入特定的列/*插入单条数据*/
实现结果:insert into Employees (FirstName,LastName)/*给特定的两列添加数据,此表的主键已经设置为自增,所以不需要添加值*/ values('Tom','Jim')
![]()
插入多条数据
实现结果:insert into Employees (FirstName,LastName)/*给特定的两列添加数据,此表的主键已经设置为自增,所以不需要添加值*/ values('zhangyang','haha'),('nike','benci')/*添加多条数据*
![]()
插入特定的数据(通过select 选择出来的)
实现结果:insert into Employees (FirstName,LastName)/*给特定的两列添加数据,此表的主键已经设置为自增,所以不需要添加值*/ select FirstName,LastName /*插入数据可以通过特定的查询来进行添加*/ from Employees where EmployeeID=1 /*这里添加的就是EmployeeID=1的数据*/
![]()
三、UPDATE(更改数据)
语法: update 表的名称 set 列名称=新值 where 列名称=某值
例如:更新单个列
实现结果:update Employees set LastName='hello world' where EmployeeID=30 /*将EmployeeID=30的数据的LastName更改为hello world
![]()
更新多个列
update Employees
实现结果:where EmployeeID=30 /*将EmployeeID=30的数据的LastName更改为hello world1,FirstName更新为ECJTU*/ set LastName='hello world1',FirstName='ECJTU'
![]()
![]()
同样的UPDATE可以配合select 更新特定的数据
效果略update Employees where EmployeeID in( from EmployeeTerritories where TerritoryID=02116) select EmployeeID set LastName='你好'
四、DELETE (数据的删除)
一、简单删除
语法:DELETE FROM 表的名称 WHERE 条
例如:
删除单条数据
删除所有行数据delete where EmployeeID=32 /*删除EmployeeID=32的数据*/ from Employees
delete from Employees