用SQL语句操作数据

结构化查询语言(Structured Query Language)简称SQL(发音:/ˈes kjuː ˈel/ "S-Q-L"),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

01.SQL语句书写规范

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

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

3.自增列不可以赋值

4.字符串和日期类型都需要单引号
  5.起表名的时候,千万不要起得太好,例如不要使用User作为表名。
     如果表名和关键字重复了,我们可以通过[]取消转义

6.通过Ctrl+R:可以显示和隐藏结果集窗口

02.新增数据注意事项

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

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

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

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

03.自增列不能赋值哟!

eg:

insert into goodPerson(stuName,stuAge,Email)
values('张晓玲',20,default) --Email为自增列,且有ID列为自增列,我没有给它赋值,记住哟!

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

方案一:insert into 目标表

select  * from 原表

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

eg:

insert into goodPerson2
select StuName, stuAge, stuAddress, stuLike, stuWishes from goodPerson
delete from goodperson2

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

from 原表

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

eg:

select * into goodpersonbak
from goodperson

方案三(较常用):

eg:

 insert into 目标表(存在)
select '高一二班' union
select '高一五班'

04. 使用T-SQL更新数据

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

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

eg:如果要查找Email为null的学生信息.

select *from Student
where Email is null --切不可写成where Email=null

更新数据语法: update 表名 set 列名 =更新值 [where 更新条件]

eg1:在学生表中,把所有你的学生的性别改为0(女)

update Student set SSex=0

eg2:更新"成龙"为'李小龙'

update Student set name='李小龙'

where name='成龙'

eg3:将"成龙" 改成"李小龙"且年龄改为25

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

where stuname='成龙'

05. 别名的使用

别名方案一:
select msgAuthor as 留言人,msgContent as 留言内容
from Message

别名方案二:

select msgAuthor  留言人,msgContent  留言内容
from Message

别名方案三:
select 留言人=msgAuthor,留言内容=msgContent
from Message

将多列合并成一列显示
select msgAuthor+'____'+msgContent as 留言人说的留言是一种留言留言
from Message

05.delete和truncate删除键的使用

.delete 后可以跟where条件,而truncate不行

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

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

先说到这里了!下次再谈!!!!拜!

最新文章

  1. C#中REF和OUT的区别
  2. js遍历jsonTree
  3. 安装DRBD的一些问题
  4. 【转】使用sklearn优雅地进行数据挖掘
  5. WPF 程序检测 windows 关机
  6. mrp功能分类
  7. 在android的spinner中,实现取VALUE值和TEXT值
  8. Activiti源码浅析:Activity与Task
  9. nginx错误汇总
  10. sql server数据库实现保留指定位数小数的函数
  11. poj 3323 Matrix Power Series (矩阵乘法 非递归形式)
  12. POJ 3414 Pots(BFS)
  13. 关于HTTP请求出现 405状态码 not allowed的解决办法
  14. css背景图片充满DIV
  15. ELK的安装
  16. windows 服务实现定时任务调度(Quartz.Net)
  17. 群晖NAS百度云Docker客户端下载目录没有权限的问题解决
  18. 中南大学oj:1352: New Sorting Algorithm
  19. Merge join、Hash join、Nested loop join对比分析
  20. ios/object-c中的UIColor一些比较偏的颜色展示/示例

热门文章

  1. [转]BloomFilter——大规模数据处理利器
  2. 做最好的日期控件,My97 DatePicker 4.8 Beta4
  3. S1700
  4. WPF常用控件样式集锦
  5. iOS开发-Xcode升级后插件失效解决办法
  6. POJ 3519 Minimal Backgammon
  7. haproxy 配置
  8. Codeforces Round #184 (Div. 2) E. Playing with String(博弈)
  9. Inkpad中文翻译已合并到官方项目
  10. 快乐的JS正则表达式(一)