Sql Server
SQL server 循环语句--WHILE 、CURSOR
小星星 发表于2021-11-01 浏览250 评论0
1 普通循环语法WHILE Boolean_expression
{ sql_statement | statement_block }
[ BREAK ]
{ sql_statement | statement_block }
[ CONTINUE ]1.1 示例while @n >= 0
begin
&n
Sql Server
SQL Server 重复字符表达式--REPLICATE()
小星星 发表于2021-11-01 浏览256 评论0
1 格式REPLICATE(input_string, count)说明:input_string为字符串,count为数字(正整数,负数将返回空字符串),函数作用为,返回count个,input_string的字符串结果。2 示例select REPLICATE('test',2)结果为:testtest
Sql Server
SQL Server自定义异常的使用--RAISERROR
小星星 发表于2021-11-01 浏览200 评论0
1 格式RAISERROR (60000, 16,1);2 参数解析第一个参数 Message id : 异常的唯一标识,且这个值会被赋值给SQLServer的系统变量@@Error。 自定义异常的Message Id建议使用50000以后的,因为50000以内的会被系统异常占用。第二个参数  
Sql Server
SQLServer 异常捕获,回滚,再抛出
小星星 发表于2021-11-01 浏览179 评论0
1 描述一个存储过程中多个更新操作,后面的更新操作出现异常,如果不手动回滚前面修改的数据是不会自动撤销的!2 示例BEGIN TRY
BEGIN TRAN
-- .....
COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
Sql Server
SQLServer------begin tran/commit tran事务的使用方法
小星星 发表于2021-11-01 浏览175 评论0
BEGIN TRAN 标记事务开始COMMIT TRAN 提交事务ROLLBACK TRAN 回滚事务一般把DML语句(select ,delete,update,insert语句)放在BEGIN TRAN...COMMIT TRAN 之间作为一个事务处理也就是那些语句执行过程中如果遇到错误,无论哪句遇到错误,所有语句都会回滚到BEGIN TRAN之前的状态。
Sql Server
SQL server if-else的使用
小星星 发表于2021-11-01 浏览274 评论0
1 标准写法declare @n int = 10;
if @n = 10
begin
print '@n == 10'
e
Sql Server
SQL server调用函数、存储过程和动态sql--exec
小星星 发表于2021-11-01 浏览206 评论0
1 调用函数dbo.get_currentdate()需要指定dbo.2 调用存储过程2.1 调用有参存储过程DECLARE @code VARCHAR(50);
EXEC get_code 'param1',@code OUTPUT;将存储过程get_code的返回值给到code中2.2 调用无参存储过程EXEC code;code 为存储过程名3 调用动态sql3.1 无输出DECLARE @sql&nb
后台开发
调用数据库的存储过程--SQL server
小星星 发表于2021-10-29 浏览174 评论0
1 在mapper.xml中调用<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "
<mapper namespace="com.xxx.ma
问题解决
sql server 在子查询中使用order by报错
小星星 发表于2021-10-29 浏览200 评论0
1 出现如下错误select test from (select '112' as test order by test ) A除非另外还指定了 TOP、OFFSET 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。2 解决办法子查询中添加TOP(100) PERCENTselect test&n

Sql Server
sql server 对时间的加减计算--DATEADD
小星星 发表于2021-10-29 浏览196 评论0
1 语法DATEADD(datepart,number,date)其中datepart是你要加减的时间的形式,加年?还是月?还是日等number是加减的数量date是加减的基础日期2 示例DATEADD(d,1,GETDATE())是当前时间加一天减一天就传入-1即可