不可小觑的SQL语句
在前面学的我们通过点鼠标给数据表插数据,虽然这种方法很靠谱,但是有那么的一些缺点,就是比较麻烦和效率不高。
所以现在我们的好好学SQL语句,来弥补这么的一个漏洞,能提高我们工作的效率。
SQL语句能做什么?
数据库需要一套指令集(SQL语言),能够识别指令,执行相应的操作。
1.SQL中的运算符:
01:算术运算符:
+,—,*,/,%
02.赋值运算符:
“=”
03.比较运算符:
=,>,<,<>,>=,<=,!=
04.逻辑运算符:
and,or,not
一:SQL语句的作用是什么?
解析:就是“增加、修改和删除数据”
SQL语句书写规范:
01,.在SQL Sever中,SQL语句不区分大小写(数据库名,表名,列名,关键字) ,SQL编译器都识别
02,对表进行操作的时候,一定要使先用use关键字切换到对应的数据库
03.自增列不可以赋值
1.增加数据的方法:
insert into 表名(列名)
values (数据)
eg: insert into goodPerson(stuName,stuAge)
values('晓玲',20)
注意:
01. 如果新增全部列,那么表名后可以不跟列名,但是要提供所有列的值,除非当前
列有默认值,那么也要给出default关键字。
02.如果只想给一张表中添加部分列,那么在表名后要跟上列名,并且需要保证除了你给出
的列的值之外,其他列都允许为空或者有默认值。
2.一次性向一张表中插入多条数据的解决方案:
01.语法:
SELECT (列名)
INTO <表名>
FROM <源表名>
eg:
insert into goodPerson2
select StuName, stuAge, stuAddress, stuLike, stuWishes from goodPerson
delete from goodperson2
注意事项:如果目标中有自增列,那么不能使用*号。
02. 语法:
select * into 目标表(不存在)
from 原表
eg:
select * into goodpersonbak
from goodperson
注意:
该方式只保留了数据和子自增列,但是主键等约束就都没有了。
03.语法
INSERT INTO <表名>(列名)
SELECT <列名> UNION
SELECT <列名> UNION
eg:
select * from grade
insert into grade
select '高一二班'
union
select '高一五班'
3.更新数据的方法:
语法:
UPDATE 表名 SET 列名 = 更新值
[WHERE 更新条件]
eg:
UPDATE Students
SET SAddress ='北京女子职业技术学校家政班'
WHERE SAddress = '北京女子职业技术学校刺绣班'
UPDATE Scores
SET Scores = Scores + 5
WHERE Scores <= 95
注意:更新多列数据使用逗号隔开
勿忘条件限制,以防有效数据的丢失
4.删除数据:
01:使用DELETE删除数据行
语法:
DELETE [FROM] 表名 [WHERE <删除条件>]
eg:
DELETE FROM Students
WHERE SName ='张青裁'
02.使用TRUNCATE删除数据行
语法:
TRUNCATE TABLE 表名
eg:
TRUNCATE TABLE Students
注意:
表结构、列、约束等不被
改动
不能用于有外键约束引用的表
标识列重新开始编号
经验:
实际工作中应用尽量少用TRUNCATE TABLE,因为它删除的数据不能恢复
5.delete和truncate区别?
解析:01.delete 后可以跟where条件,而truncate不行
02.delete删除数据的时候会记录日志,而truncate不会
03.delete删除表中所有数据库,id编号不会从1开始,而truncate会。
专业人士解析:因为truncate又称为“截断表”。编号从1开始。
6.数据查询的方法:
行数据表中数据的查询,那么必须先定位到该表所在的数据库
eg:
use Myschool --切换数据库
select StuId, StuName, StuAge, GradeId from Student
--我只想要年龄小于岁的学员信息
select * from Student where StuAge<=22
7.几个注意点
01.见到update语句,一定要跟where条件,这是命令。
02.在SQL Server中null代表不知道,所以如果where后的限定条件不能用=和null做对比,必须使用is null
8.导入数据:
注意:
导入数据前先根据数据库表中设置的约束、主外键关系等检查导入数据的合法性
我非常高兴大家细心阅读之后,能得到收获。大家可以勇敢,积极的补充知识。