`

SQL Server 存储过程insert(自增value和sort)

 
阅读更多
--select * from tblDJCodeName
alter proc demo_codename_insert
@codetype varchar(20),
@name varchar(20),
@value int output
as 
declare 
@max int, @sort int
begin
	select @max = max(value), @sort = MAX(Sort) from tblDJCodeName where Name = @name
	if isnull(@max, '') <> ''
		select @value = 1 
	else
		[b]select @value = @max*2 [/b] --使用1,2,4,8.. 的设计风格
	if @sort is null 
		select @sort = 1
	else 
		select @sort = @sort + 1
	insert tblDJCodeName(CodeType, Name, Value, Sort, IsDelete) values(@codetype, @name, @value, @sort, 0)
end

--执行
declare @val varchar(10)
exec demo_codename_insert 'com_demo', '测试', @val output
print @val
分享到:
评论

相关推荐

    数据库基础-sql语言-数据库编程.ppt

    数据库是存储和管理数据的核心工具,SQL(Structured Query Language)是用于操作数据库的语言。本篇主要围绕Microsoft SQL Server,关系模型以及SQL基础进行讲解。 首先,Microsoft SQL Server是一款由Microsoft...

    微软内部资料-SQL性能优化3

    For more information about how to decode this value, see also… Inside SQL Server 2000, pages 803 and 806. Key Range Locking Key Range Locking To support SERIALIZABLE transaction semantics, ...

    sql数据库 转 Access SQL语句改写之 Case When Then When Then Else End

    - `SWITCH(expression1, value1, expression2, value2, ..., else_value)`:这个函数接受一系列的表达式和对应的值作为参数,同时还可以指定一个默认值(当所有表达式都不成立时返回)。它会依次检查每个表达式,...

    微软内部资料-SQL性能优化5

    This uniqueifier is a 4-byte value added as an additional sort key to only the rows that have duplicates of their primary sort key. You can see this extra value if you use DBCC PAGE to look at the ...

    ibatis 增删改查 存储过程及分页模拟

    本教程将详细介绍如何利用Ibatis进行增删改查操作,调用存储过程以及实现分页功能,并通过Log4j配置来输出SQL日志。 首先,让我们了解Ibatis的基本配置。Ibatis的核心配置文件是`mybatis-config.xml`,在这里你可以...

    oracle查询语句大全.docx

    以上只是Oracle查询语句的一部分,Oracle数据库系统提供了丰富的SQL语法和高级特性,如索引、视图、触发器、存储过程等,这些都极大地扩展了数据操作的灵活性和复杂性。在实际工作中,根据具体需求选择和组合使用...

    数据库操作ADO篇

    2. **Command对象**:用于执行数据库操作,如SQL查询、存储过程等。可以设置Command对象的CommandText属性来指定要执行的SQL语句,并可以通过Command对象的Parameters属性来传递参数。 3. **Recordset对象**:表示...

    八、数据存储与访问 Android开发与实践

    - 创建ContentProvider需要继承`ContentProvider`类并重写相关方法,如`query()`, `insert()`, `update()`, `delete()`和`getType()`。 - 其他应用通过`ContentResolver`来访问ContentProvider提供的数据,使用`...

    ADO数据库编程实例

    Recordset提供了多种方法和属性来处理数据,如MoveFirst、MoveNext、MovePrevious、MoveLast用于导航,Fields集合用于访问字段值,Update和CancelUpdate用于更新数据,以及Filter和Sort属性用于数据过滤和排序。...

    sql-challenge:SQL挑战

    SQL是管理和处理关系数据库的标准语言,广泛应用于数据分析、数据挖掘以及各类业务系统的后端。通过解决一系列的SQL问题,你可以提升自己的SQL技能,更好地理解和运用这个语言。 一、SQL基础 SQL的基本组成部分...

    android 数据存储技术 详解

    在Android开发中,数据存储是不可或缺的一部分,它用于持久化应用程序的数据,以便在用户退出应用后还能保持数据。本文将详细介绍Android中的四种主要数据存储技术:SharedPreferences、文件存储、SQLite数据库以及...

    HackerRank:该存储库将包含我接受的C ++ 14和MySQL SQL的HackerRank解决方案

    5. **存储过程和函数**: 使用存储过程和自定义函数提高SQL代码的复用性和效率。 6. **性能优化**: 学习索引的使用、查询优化和SQL语句的重构,以提高数据库的读写速度。 在这个项目中,开发者可能已经解决了涵盖...

    php考试题目,初级用户必备,是走向成功必经过的过程,

    - `asort()` 函数用于对数组元素进行升序排序。 - `rsort()` 函数用于对数组元素进行降序排序。 - `shuffle()` 函数用于对数组元素进行随机排序。 - `array_rand()` 函数用于随机获取数组中的元素下标。 以上是...

    Android 5种存储 详解

    这种方式以 XML 文件的形式存储 key-value 键值对数据,并且支持基本的数据类型如 Long、Int 和 String。 **存储机制**: - SharedPreferences 的存储位置通常在 `/data/data/&lt;包名&gt;/shared_prefs` 目录下。 - 它...

    基于Facebook的Hive开发

    - **可插拔的格式和存储处理器**:支持不同的数据存储格式和处理器,以适应多样化的数据源。 - **数据库模式支持**:可以管理复杂的数据库架构。 #### 并发模型 Hive引入了新的并发模型来支持读写并发操作,这对于...

    VB.net 源程序(插入、删除、排序、数组等)

    可以使用ADO.NET(微软的数据访问技术)组件,如SqlConnection、SqlCommand和SqlDataReader,来连接到数据库(如SQL Server),并通过SQL语句执行插入操作。例如,创建一个新的SqlCommand对象,设置其CommandText...

    高级软件人才培训专家-Hadoop课程资料-5-第五章 - 分布式SQL计算 Hive 语法与概念

    name [SORT BY (col_name [ASC|DESC], ...)], ...) [INTO num_buckets BUCKETS]] [ROW FORMAT DELIMITED [FIELDS TERMINATED BY 'field_delimiter'] [COLLECTION ITEMS TERMINATED BY 'mapkey_delimiter'] [MAP KEYS...

    oracle动态性能表

    -- 如果存在,直接跳过4和5,运行sql. 此时算soft parse 4:选择执行计划 5:产生执行计划 -- 如果5个步骤全做,这就叫hard parse. 注意物理I/O  oracle报告物理读也许并未导致实际物理磁盘I/O操作。这完全有可能...

Global site tag (gtag.js) - Google Analytics