日度归档:2019年6月5日

mssql sqlserver order by 1具有什么功能呢?


摘要:
下文通过举例的方式讲述order by 1的具体含义,如下所示:
实验环境:sql server 2008 R2



order by 1功能说明

ORDER BY 1功能:
根据select 第一个字段进行排序操作
order by 1 asc :
根据select 第一个字段进行升序操作
order by 1 desc :
根据select 第一个字段进行降序操作



order by 1 举例说明

 create table [maomao365.com] (keyId varchar(20),name varchar(120))
go
insert into  [maomao365.com] (name,keyId)values(10,'we')
insert into  [maomao365.com](name,keyId)values(2,'b')
insert into  [maomao365.com](name,keyId)values(3,'C')
insert into  [maomao365.com] (name,keyId)values(4,'a')
insert into  [maomao365.com] (name,keyId)values(5,'E')
insert into  [maomao365.com] (name,keyId)values(7,'F')
go
select * from  [maomao365.com]
go
select * from  [maomao365.com] order by  1 desc  
go
truncate table  [maomao365.com]
drop table   [maomao365.com]
go 
order by 1用法举例

order by 1用法举例

mssql sqlserver 深入理解@@error 变量-避免@@error误区


摘要:
下文讲述sqlserver中@@error变量的详细说明,如下所示:
实验环境:sql server 2008 R2



@@error 变量简介

@@error 是一个系统变量
@@error 返回当前执行语句的执行状态,当@@error 等于0时,代表sql语句执行成功,不等于0则代表sql执行失败
@@error 是一个动态计数器,它是一个系统变量,不能进行相关加减操作

@@error 常见写法

    if  (@@error <>0)
      begin 
          rollback tran; 
      end
    else
      begin
         commit tran; 
     end


@@error 误区

SET NOCOUNT ON;
 BEGIN tran 

UPDATE [maomao365.com]
SET info='测试信息'
WHERE  keyId =100

RAISERROR ('抛出错误!',16,1)

SELECT newId()

if(@@error<>0)
 begin
    ROLLBACK tran 
end
else
begin
    COMMIT  tran
end 
set nocount on 


以上的sql脚本 RAISERROR (‘抛出错误!’,16,1) 抛出sql错误,理论上@@error变量应该不等于0,但是当@@error判断时,数据还是被提交,那么为什么会出现这样的情况呢?
主要原因是:
RAISERROR抛出错误脚本运行后,@@error变为5000,但是当运行
select newid()后,因为sql脚本执行成功,@@error变量为0
最后if 判断时,@@error已经为0了,所以数据还是会被提交。
—处理方法:
方法1:使用try catch 语法对sql脚本进行包裹
方法2:在脚本运行后,及时对sql脚本进行判断

  ---方法1:
SET NOCOUNT ON;
BEGIN TRY
 BEGIN TRANSACTION 

UPDATE [maomao365.com]
SET info='测试信息'
WHERE  keyId =100

RAISERROR ('抛出错误!',16,1)

 SELECT newId()

COMMIT TRANSACTION
END TRY

BEGIN CATCH
    DECLARE @msg nvarchar(1000)=ERROR_MESSAGE()    --将错误信息放入@msg变量中              
    RAISERROR (@msg,16,1)   
    ROLLBACK TRANSACTION T ----回滚脚本
END CATCH
set nocount on 
go

 ---方法2:

SET NOCOUNT ON;
 BEGIN tran 
UPDATE [maomao365.com]
SET info='测试信息'
WHERE  keyId =100

RAISERROR ('抛出错误!',16,1)
if(@@error<>0)
 begin
    ROLLBACK tran  
   return;
end

SELECT newId()
if(@@error<>0)
 begin
    ROLLBACK tran 
end
else
begin
    COMMIT  tran
end 
set nocount on 

html教程—HTML 注释写法分享


摘要:
下文讲述html文件中,html注释内容的写法,如下所示:
实验环境:windows



html 注释功能及写法说明

html注释功能:
在html文件中备注一些有用的信息,方便其他同事修改html源码时,可识别源码中指定元素的功能及用途,
html注释内容不会显示在用户的浏览器界面上
html注释写法:
<!–
注释内容
–>
小于号加上两个小横杠

中间加上注释内容

结尾采用两个小横杠加一个大于号



html 注释举例应用

      <!DOCTYPE html>
<html>
  <head>
    <title>这是maomao365.com的包含html注释的网页</title>
  </head>
<body>
    
	 <!-- 
	   这是maomao365.com html文件中的注释信息
	 -->
    
    
</body>
</html> 
html注释编写方法

html注释编写方法