--概要:SqlService常用语句
--设计者:DuanXuWen
--版本:0.1
--修改者:
--修改时间:
CREATE TABLE #table1
(
Id INT IDENTITY(1,1), --主键自增
Name VARCHAR(20),--名字
Age INT --年龄
)
INSERT INTO #table1 VALUES(\'哈哈\',16)
INSERT INTO #table1 VALUES(\'嘻嘻\',17)
INSERT INTO #table1 VALUES(\'呵呵\',18)
INSERT INTO #table1 VALUES(\'嘿嘿\',19)
SELECT * FROM #table1
CREATE TABLE #table2
(
Id INT IDENTITY(1,1), --主键自增
Name VARCHAR(20),--名字
Age INT --年龄
)
SELECT * FROM #table2
--①游标----------------------------------------------------------------------
--循环判断#table1中数据Name,#table2中没有则添加,有则修改数据Age为6
--游标更新顶级菜单排序
DECLARE @this_Name VARCHAR(50)
DECLARE EditTable2 CURSOR FOR (SELECT Name FROM #table1)--创建游标
OPEN EditTable2 --开始游标
FETCH NEXT FROM EditTable2 --指针下移
INTO @this_Name --获取当前指针指向的菜单ID
WHILE @@FETCH_STATUS=0 --0代表未执行结束
BEGIN
--判断是否已存在记录,如不存在则添加一条记录
IF NOT EXISTS (SELECT * FROM #table2 WHERE Name = @this_Name)
BEGIN
INSERT INTO #table2 (Name,Age)
SELECT Name,Age FROM #table1 WHERE Name = @this_Name
END
ELSE
BEGIN
--如存在则修改
UPDATE #table2 SET Age = 6 WHERE Name = @this_Name
END
FETCH NEXT FROM EditTable2 ----指针下移
INTO @this_Name --获取当前指针指向的菜单ID
END
CLOSE EditTable2--关闭游标
DEALLOCATE EditTable2--释放游标
--②循环----------------------------------------------------------------------
--将#table1中的数据Age循环修改为从30自增
DECLARE @i INT,@count INT
SET @i = 0
SELECT @count = COUNT(ID) FROM #table1
WHILE @i< @count
BEGIN
SET @i=@i + 1
UPDATE #table1 SET Age = @i+29 WHERE ID=@i
END
继续阅读与本文标签相同的文章
-
MongoDB副本集
2026-05-18栏目: 教程
-
泉州市加快实施“互联网 生产基地 物流”着力构建区域物流枢纽新格局
2026-05-18栏目: 教程
-
微功能号:不需要借助任何辅助工具!微功能号给你美妙的多群直播体验
2026-05-18栏目: 教程
-
加快检测速度以减缓埃博拉疫情:智能手机应用程序改变了对刚果
2026-05-18栏目: 教程
-
微信小程序前景大好,寻找第三方公司进行开发靠谱吗?
2026-05-18栏目: 教程
