******用SQL语句操作数据*******

                                                                               用SQL语句操作数据

01.SQL语句书写规范

  1,.SQL Sever中,SQL语句不区分大小写(数据库名,表名,列名,关键字SQL编译器都识别

  2,对表进行操作的时候,一定要使先用use关键字切换到对应的数据库

  3.自增列不可以赋值

02.新增数据注意事项

  01.如果新增全部列,那么表名后可以不跟列名,但是要提供所有列的值,除非当前

  列有默认值,那么也要给出default关键字。

  02.如果只想给一张表中添加部分列,那么在表名后要跟上列名,并且需要保证除了你给出

  的列的值之外,其他列都允许为空或者有默认值。

  insert into goodPerson(stuName,stuAge) values('张小花',20)

03. 一次性向一张表中插入多条数据的解决方案

方案一:insert into 目标表

 select  * from 原表

 注意事项:如果目标中有自增列,那么不能使用*号。

 方案二:select *  into 目标表(不存在)

  from 原表

  该方式只保留了数据和子自增列,但是主键等约束就都没有了。

  

  方案三:insert into 目标表(存在)

  select '高一二班'

  union

  select '高一五班'

04.几个注意点 

 1.以后大家见到update语句,一定要跟where条件。

 2.SQL Servernull代表不知道,所以如果where后的限定条件不能用=null做对比,必须使用is null

05.deletetruncate区别?

   解析:01.delete 后可以跟where条件,而truncate不行

            02.delete删除数据的时候会记录日志,而truncate不会

            03.delete删除表中所有数据库,id编号不会从1开始,而truncate会。

 --01.如果要进行数据表中数据的查询,那么必须先定位到该表所在的数据库

use Myschool  --切换数据库

select StuId, StuName, StuAge, GradeId from Student

--我只想要年龄小于岁的学员信息

select * from Student  where StuAge<=22 

--新增数据

insert into GoodPerson values

('微冷的雨',50,'中国某地区','未知','希望大家努力学习,将来薪资K')

select * from goodperson

 

insert into goodperson(stuName,stuAge,stuAddress,stuLike,stuWishes) values('张靓颖',20,default,'大家微笑的脸庞','开心就好')

 

insert into goodPerson(stuName,stuAge) values('张晓玲',20)

delete from goodperson

where StuId=31

 

select * from goodPerson2

 

 

-- 一次性向一张表中写入多条数据方案一

insert into goodPerson2 

select  StuName, stuAge, stuAddress, stuLike, stuWishes from goodPerson

delete from goodperson2

 

--方案二

select * into goodpersonbak

from goodperson

 

--方案三:

select * from grade

insert into grade

  select '高一二班'

  union

  select '高一五班'

--更新高一三班位"无敌S1290"

update grade set gradename='无敌S1290'

where gradename='高一三班'

--"王龙彪改成"李小龙"

--将年龄为岁的学员年龄改成

update goodpersonbak set stuname='李小龙',stuage=25

where stuname='微冷的雨'

select * from goodpersonbak

update goodpersonbak set stuname='微冷的鳄鱼',stuage=10000

where stuid=1007

select * from goodperson

insert into goodperson(stuname,stuage,stulike)

values('李小龙',20,'faN')

select * from goodperson

where stuwishes is null

 

update grade set gradename='S1'

select * from goodpersonbak

原文地址:https://www.cnblogs.com/fanziyang/p/4936997.html