很久没有写过SQL了,今天写了一个循环数据更新,以备以后查看:
DECLARE @Count int ,@SortIndex int,@strSQL varchar(500)
SET @Count=(SELECT COUNT(*) FROM SCO_BehindMenu WHERE ParentId='f320a77e-096b-4929-82df-86cc41ffc3dc')
SET @SortIndex=0
WHILE(@SortIndex<@Count)
BEGIN
SET @strSQL='UPDATE SCO_BehindMenu SET SortIndex='+STR(@SortIndex+1)+' WHERE MenuId=('
SET @strSQL=@strSQL+'SELECT TOP 1 MenuId FROM SCO_BehindMenu WHERE ParentId=''f320a77e-096b-4929-82df-86cc41ffc3dc'' AND MenuId NOT IN (SELECT TOP '+STR(@SortIndex)+' MenuId FROM SCO_BehindMenu WHERE ParentId=''f320a77e-096b-4929-82df-86cc41ffc3dc'' ORDER BY MenuId) ORDER BY MenuId)'
SET @SortIndex=@SortIndex+1
print @strSQL
EXEC(@strSQL)
END
分享到:
相关推荐
#### WHILE循环 `WHILE`循环语句允许在满足特定条件时重复执行一组语句。例如,在实验内容的第二部分中,我们使用`WHILE`循环来查找500以内能被3或7整除的所有数字: ```sql Declare @a int Select @a = 0 While @...
4. **流程控制语句**: 如IF...ELSE, WHILE, BEGIN...END等,用于编写复杂的逻辑流程,使得T-SQL可以实现条件判断和循环。 5. **变量和声明**: T-SQL允许在批处理或存储过程中声明并使用变量,如DECLARE @varName ...
- `WHILE`:用于循环执行一组语句。 #### 示例代码解读 以下代码展示了如何使用T-SQL进行变量声明、赋值和查询: ```sql -- 声明并初始化变量 DECLARE @id CHAR(10); SET @id = '10010001'; -- 或者直接在查询中...
- **WHILE循环**:当满足特定条件时重复执行一段代码。 - **DECLARE...SET**:声明并设置变量,常用于存储和传递数据。 - **BEGIN...END**:用于定义代码块,可以组合多个语句。 4. **游标** - 游标允许程序...
根据提供的文件信息,我们可以归纳出以下几个关键的知识点: ...以上内容涵盖了 T-SQL 中关于数据库表空间查询、数据库备份以及添加远程服务器的基础知识和示例代码,希望能对学习 T-SQL 的朋友们有所帮助。
2. **流程控制**:T-SQL提供了IF...ELSE、WHILE、CASE等结构,用于编写复杂的逻辑控制。 3. **存储过程和函数**:T-SQL支持创建存储过程和用户定义函数,它们可以封装复杂的操作,提高代码重用性。 4. **游标**:T...
T-SQL在SQL的基础上,增加了许多特性,例如流程控制语句(如BEGIN...END, IF...ELSE, WHILE等)、事务处理(COMMIT, ROLLBACK)以及自定义函数等。这些扩展使得开发者能够编写更复杂的存储过程和触发器,实现更高级...
WHILE循环在PL/SQL和T-SQL中都有使用。下面是一个简单的示例: ```sql DECLARE i NUMBER := 1; -- 初始化变量 BEGIN WHILE i 当i小于等于10时执行循环体 DBMS_OUTPUT.PUT_LINE(i); -- 输出i的值 i := i + 1; --...
WHILE @@FETCH_STATUS = 0 BEGIN declare @strtemp varchar(50) -- Concatenate and display the current values in the variables. --PRINT ' when ' + cast(@bmid as varchar(20)) + ' then ' + @bmmc select ...
根据提供的文件信息,我们可以将T-SQL(Transact-SQL)的重要知识点分为以下几个部分进行详细的阐述: ### 一、数据操作 #### SELECT - **功能**:从数据库表中检索数据行和列。 - **语法**: ```sql SELECT ...
4. **控制流程**:掌握IF-ELSE、CASE表达式、WHILE循环和BEGIN-END块等控制流程语句,用于编写逻辑复杂的存储过程。 5. **存储过程和函数**:理解存储过程的概念,创建和调用存储过程,以及使用内置函数和用户定义...
- **WHILE循环**:当满足某个条件时持续执行循环体。 - **BEGIN...END**:用于封装PLSQL块,可以包含其他控制结构和SQL语句。 4. **过程和函数**: - **过程**:无返回值的自定义操作,可以接受参数并在其中执行...
T-SQL程序设计 T-SQL 是一种结构化查询语言,广泛应用于关系型数据库管理系统中。它是一种声明式语言,用于定义数据的结构和操作数据。T-SQL 程序设计是指使用 T-SQL 语言来设计和实现数据库应用程序的过程。 变量...
- **流程控制结构**:包括IF...ELSE语句、WHILE循环、CASE表达式等,这些结构用于控制代码的执行流程。 #### 三、高级T-SQL编程技术 除了基础的T-SQL知识外,《Inside Microsoft SQL Server 2008 T-SQL ...
3. **流程控制语句**:T-SQL提供了IF...ELSE、WHILE、BEGIN...END等结构,支持条件判断和循环逻辑,使得编写复杂的业务逻辑成为可能。 4. **变量与存储过程**:DECLARE用于声明变量,SET或SELECT用于赋值。存储过程...
对于开发人员来说,理解T-SQL中的控制流程语句(如IF...ELSE、WHILE、CASE等)和错误处理机制至关重要。这些语句使得在T-SQL中实现复杂的业务逻辑成为可能。书中还会涉及如何使用这些语句编写条件和循环结构,以及...
3. **流程控制**:T-SQL支持流程控制语句,如IF-ELSE条件语句、WHILE循环和CASE表达式,使得在存储过程中可以实现逻辑判断和循环操作。 4. **存储过程**:存储过程是预编译的T-SQL代码集合,可以包含多个SQL语句和...
`WHILE`循环和`BEGIN...END`块可以用来重复执行一段代码直到满足特定条件。 3. **异常处理:** `TRY...CATCH`结构用于捕获和处理运行时错误。 **三、存储过程与函数** 1. **存储过程:** 一组预编译的T-SQL...
5. **流程控制**:T-SQL提供了流程控制结构,如IF...ELSE、WHILE循环、BEGIN...END块,以及CASE表达式,用于编写复杂的逻辑流程。 6. **事务处理**:T-SQL支持事务的概念,可以使用BEGIN TRANSACTION、COMMIT ...
本文介绍了T-SQL编程的一些基础知识点,包括表的创建、数据查询、条件表达式、变量处理、条件分支以及循环结构等。这些知识对于理解和掌握T-SQL编程至关重要,也是进行高效数据库管理和应用开发的基础。