SQL SERVER2000深入学习之常见错误

love霜哥

love霜哥

2016-01-29 16:02

SQL SERVER2000深入学习之常见错误,SQL SERVER2000深入学习之常见错误

SQL SERVER2000深入学习之常见错误

/*数据库编程中常见的错误*/

--(1)处理空值

--(2)从结果集中对变量进行赋值

--(3)没有受影响的记录

--(4)错误大小或数据类型

--(5)默认长度所引发错误

--(6)触发器回滚

--(7)警告和优先级错误

--(8)嵌套注释

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

--(9)延迟名称解析

--(10)游标

--(11)过分自信

/* for example*/

--(1) 处理空值

--wrong-follow

--if @score=null (except set Ansi_Nulls off)

--if @score<null

--Right

--if @score is null

--if @score is not null

--(2) 从结果集中对变量进行赋值

--未考虑返回记录集为空时并未对变量进行初始化所引起的问题

--当想返回给变量记录集最后一条记录可能出错,因为 有时很难预测最后一条记录时哪一条

--这取决于所用的索引和查询

--(3) 没有受影响的记录

--有时或许我们需要假设当T-SQL语句没有影响任何记录时,SQL-server将返回错误

--因为其是逻辑错误所以不可用@@Error来检测,应用@@rowCount

--(5)默认长度

/*

declare @vchardef varchar

set @vchardef='123456789012345678901234567890'

select datalength(@vchardef),@vchardef

--将返回1 1

*/

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

/* the follow is right

declare @vchardef varchar(30)

set @vchardef='123456789012345678901234567890'

select datalength(@vchardef),@vchardef

*/

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/sqlserver/)

(6) )延迟名称解析

--Set Xact_Abort On

--语句强制SQL_SERVER在出现错误时回滚整个事务,并停止进一步执行,停止当前批处理的执行,错误均被当成致命错误

--但是其不会检测到“编译错误中应延迟名称解析的原因而未在编译阶段发现的错误”如更新不存在的表

--因而并不在错误发生时回滚,而是继续提交和执行

展开更多 50%)
分享

猜你喜欢

SQL SERVER2000深入学习之常见错误

SQLServer
SQL SERVER2000深入学习之常见错误

sql server2000导入mdf文件

SQLServer
sql server2000导入mdf文件

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Windows 2003不太喜欢SQL Server2000

SQLServer
Windows 2003不太喜欢SQL Server2000

SQL Server2000 索引结构及其使用

编程语言 网络编程
SQL Server2000 索引结构及其使用

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

SQL SERVER2000备份和恢复存储过程

SQLServer
SQL SERVER2000备份和恢复存储过程

SQL Server2000企业版安装教程

SQLServer
SQL Server2000企业版安装教程

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

保护 SQLServer 2005 Express Edition Server

保护 SQLServer 2005 Express Edition Server

《最后的故事》游戏图文流程攻略(已完结)

《最后的故事》游戏图文流程攻略(已完结)
下拉加载更多内容 ↓