sql 流水号获取代码实例

这篇文章主要介绍了sql 流水号获取代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

经常用到产生订单号等流水单号的场景,sqlserver实现流水号,如下:

表tb_b_Seq(流水号表):

CREATE TABLE tb_b_Seq(
Year int ,--年份
Month int,--月份
Attr varchar(50),--属性
Seq int--流水号
) 

获取流水号,通过存储过程:

create Proc GetSeq (
@attr varchar(50),
@year int,
@month int,
@Return int output )
As
set @Return=(select top 1 Seq from tb_b_Seq where Attr=@attr and MONTH=@month and YEAR=@year)
if(@Return is null)
begin
 set @Return=1
 insert into FMDS_tb_b_Seq (Attr,Year,Month,Seq) values (@attr,@year,@month,@Return)
end
else
begin
 set @Return=@Return+1
 update FMDS_tb_b_Seq set Seq=@Return where Attr=@attr and MONTH=@month and YEAR=@year
end

测试:

declare @ret int
exec GetSeq 'Contract',2017,10,@ret
print @ret

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • PHP获取MySQL执行sql语句的查询时间方法

    如下所示: //计时开始 runtime(); //执行查询 mysql_query($sql); //计时结束. echo runtime(1); //计时函数 function runtime($mode=0) { static $t; if(!$mode) { $t = microtime(); return; } $t1 = microtime(); list($m0,$s0) = explode(" ",$t); list($m1,$s1) = explode("

  • mysql 获取昨天日期、今天日期、明天日期以及前一个小时和后一个小时的时间

    1.当前日期 select DATE_SUB(curdate(),INTERVAL 0 DAY) ; 2.明天日期 select DATE_SUB(curdate(),INTERVAL -1 DAY) ; 3.昨天日期 select DATE_SUB(curdate(),INTERVAL 1 DAY) ; 4.前一个小时时间 select date_sub(now(), interval 1 hour); 5.后一个小时时间 select date_sub(now(), interval -1

  • oracle(plsql)生成流水号

    复制代码 代码如下: CREATE OR REPLACE FUNCTION fn_no_make(v_prefix     VARCHAR2,                                      v_table_name VARCHAR2,                                      v_number_col VARCHAR2) /*  * v_prefix:     编码前缀两位  * v_table_name:编码所在表名  * v_num

  • mybatis+mysql 使用存储过程生成流水号的实现代码

    使用存储过程,在操作数据库时开启事务,避免并发时同时操作造成数据重复 CREATE DEFINER=`root`@`localhost` PROCEDURE `GetSerialNo`(IN tsCode VARCHAR(50),OUT result VARCHAR(200) ) BEGIN DECLARE tsValue VARCHAR(50); DECLARE tdToday VARCHAR(20); DECLARE nowdate VARCHAR(20); DECLARE tsQZ VAR

  • ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例

    本文实例讲述了ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作.分享给大家供大家参考,具体如下: ThinkPHP中获取最后一次执行sql语句的 方法有两种: 其一是 调用模型 获取 如: $sql = $model ->getLastSql(); Thinkphp中Model类,有getLastSql这个函数,甚至还有,getLastInsID,getDbError,getError,getPk,getDbFields等函数.这些函数都是我们经常可能会用到的model层的函数.

  • mysql 获取今天、昨天0点时间戳的实例

    如下所示: 昨天:UNIX_TIMESTAMP(CAST(SYSDATE()AS DATE) - INTERVAL 1 DAY) 今天:UNIX_TIMESTAMP(CAST(SYSDATE()AS DATE)) 要查询今天内的记录只要创建时间大于等于今天0点的时间戳就可以(仅限没有创建时间大于今天的情况),昨天内的记录就是大于等于昨天0点小于今天0点. 以上这篇mysql 获取今天.昨天0点时间戳的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • sql 流水号获取代码实例

    这篇文章主要介绍了sql 流水号获取代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 经常用到产生订单号等流水单号的场景,sqlserver实现流水号,如下: 表tb_b_Seq(流水号表): CREATE TABLE tb_b_Seq( Year int ,--年份 Month int,--月份 Attr varchar(50),--属性 Seq int--流水号 ) 获取流水号,通过存储过程: create Proc GetSeq (

  • Apache Calcite进行SQL解析(java代码实例)

    背景 当一个项目分了很多模块,很多个服务的时候,一些公共的配置就需要统一管理了,于是就有了元数据驱动! 简介 什么是Calcite?是一款开源SQL解析工具, 可以将各种SQL语句解析成抽象语法树AST(Abstract Syntax Tree), 之后通过操作AST就可以把SQL中所要表达的算法与关系体现在具体代码之中.Calcite能做啥? SQL 解析 SQL 校验 查询优化 SQL 生成器 数据连接 实例 今天主要是贴出一个java代码实例,实现了:解析SQL语句中的表名上代码:SQL语

  • Powershell访问SQL Server数据库代码实例

    支持所有版本的SQLserver. 你是否需要连接数据库?这里有一段代码演示如何查询和获取SQL数据,只需非常简单正确的配置你的账户信息.服务器地址及SQL语句就行: 复制代码 代码如下: $Database                       = 'Name_Of_SQLDatabase' $Server                         = '192.168.100.200' $UserName                         = 'DatabaseUs

  • Ruby连接使用windows下sql server数据库代码实例

    require 'win32ole' class SqlServer # This class manages database connection and queries attr_accessor :connection, :data, :fields def initialize @connection = nil @data = nil end def open # Open ADO connection to the SQL Server database connection_st

  • C#使用SQL Dataset数据集代码实例

    ADO.NET数据访问技术的一个突出特点就是支持离线访问,而实现这种离线访问的技术核心急速DataSet对象,该对象通过数据驻留在内存来实现离线访问. DataSet对象由一组DataTable对象组成,这些对象与DataRelation对象又包含Row(行),集合,Columns(列)集合,Rows集合是有多个DAtaRow对象组成,Columns集合是由多个Datacolumns对象组成. 步骤: 1,引入命名空间System.Data: 2,创建DataSet对象 3,创建DataTabl

  • C#连接到sql server2008数据库的实例代码

    废话不多说了,直接给大家贴代码了,具体代码如下所示: namespace MyFirstApp { class Program { static void Main(string[] args) { SqlConnection conn = null; SqlCommand comm = null; SqlDataReader sdreader = null; try { string ConStr = "server=192.168.1.110;uid=sa;pwd=woaifr0828;da

  • c#操作sql server2008 的界面实例代码

    先是查询整张表,用到combobox选择查询哪张表,最后用DataGridView显示 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsForms

  • JS传递对象数组为参数给后端,后端获取的实例代码

    前端JS代码: var conditons = []; var test1 = new Object(); test1.name="1"; test1.id="2"; var test2 = new Object(); test2.name="1"; test2.id="2"; conditons.push(test1); conditons.push(test2); $(function(){ $.ajax({ async:

  • Android 获取时间实例代码

     Android 获取时间实例代码 注意: h:12小时制小时数 H:24小时制小时数 实例代码: import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * Created by Administrator on 2017/5/8. */ public

  • Python登录并获取CSDN博客所有文章列表代码实例

    分析登录过程 这几天研究百度登录和贴吧签到,这百度果然是互联网巨头,一个登录过程都弄得复杂无比,简直有毒.我研究了好几天仍然没搞明白.所以还是先挑一个软柿子捏捏,就选择CSDN了. 过程很简单,我也不截图了.直接打开浏览器,然后打开Fiddler,然后登录CSDN.然后Fiddler显示浏览器向https://passport.csdn.net/account/login?ref=toolbar发送了一个POST请求,这个请求包含了登录表单,而且还是未加密的.当然CSDN本身还是使用了HTTPS

随机推荐