SqlServer 循环建表、删除表、更新表

常用于分库分表

1、批量删除

declare @outter int
declare @inner int
declare @tablePrefix varchar(30)
declare @tableName varchar(36)
set @outter=1
set @inner=0
while (@outter<=12)
begin
 set @tablePrefix=‘BankPayOrder_‘+convert(varchar,@outter)+‘_‘
 while(@inner<=9)
 begin
 set @tableName=@tablePrefix+convert(varchar,@inner)
 execute(‘delete from ‘+@tableName+‘‘)
 set @inner=@inner+1
 end
 set @inner=0
 set @outter=@outter+1
end 

2、批量建表

declare @outter int
declare @inner int
declare @tablePrefix varchar(30)
declare @tableName varchar(36)
set @outter=1
set @inner=0
while (@outter<=12)
begin
 set @tablePrefix=‘BankPayOrder_‘+convert(varchar,@outter)+‘_‘
 while(@inner<=9)
 begin
 set @tableName=@tablePrefix+convert(varchar,@inner)
 execute(‘select * into ‘+@tableName+‘ from [BankPayOrderCommission_2018].[dbo].[BankPayOrder_1_0]‘)
 set @inner=@inner+1
 end
 set @inner=0
 set @outter=@outter+1
end 

原文地址:https://www.cnblogs.com/GreenLeaves/p/10216521.html

时间: 2024-11-10 05:04:36

SqlServer 循环建表、删除表、更新表的相关文章

Sqlserver 自建一个过程用于查看表结构

自建一个过程用于查看表结构 CREATE PROC [sp_tableHelp] (@TableName VARCHAR(128) = '' ,@ColName VARCHAR(128)='') AS BEGIN --表结构速查 --Brin --DECLARE @TableName VARCHAR(128) --DECLARE @ColName VARCHAR(128) --SET @TableName = 'tLocatorMove' --SET @ColName = 'nStatus' S

sql语句中3表删除和3表查询

好久没来咱们博客园了,主要近期在忙一些七七八八的杂事,包括打羽毛球比赛的准备和自己在学jqgrid的迷茫.先不扯这些没用的了,希望大家能记得小弟,小弟在此谢过大家了. 回归正题:(以下的sql是本人在用yii框架开发项目时写的,希望对大家有些帮助) 首先是多表查询,为了简化我先贴出自己的代码,在贴出解释代码. select a.*, b.*, c.* from rlzy_payfeeinf a inner join rlzy_personinfo b on a.bid=b.bid join rl

MySQL基础入门学习【10】多表删除

DELETE tbl_name [.*] [, tbl_name[.*]]... FROM table_references [WHERE where_condition] 现在想把重复的记录删除掉,保留id号比较小的记录. 一张表模拟多表删除来实现: (1) 查找重复记录 (2) 参照这张表来删除上面那个表中的数据 [涉及 子查询.连接.多表更新.多表删除 : 多表操作时实现了自身的连接:通过自身的连接删除重复的记录] 原文地址:https://www.cnblogs.com/jade-91/

数据库中两张表之间的数据同步实现思路(增加、删除、更新)Mysql、sqlserver

分别创建增加.删除.更新的触发器(Trigger)来达到两张表之间数据同步的目的. 1:数据同步增加:如有两张表--A表和B表,创建触发器使当A表插入数据后B表也同步插入数据.其中B表插入数据的字段需要同A表中的字段相对应. CREATE TRIGGER 触发器名称 ON A表 AFTER INSERT AS BEGIN INSERT INTO B表(B表字段1,B表字段2,B表字段3) SELECT A表字段1,A表字段2,A表字段3 FROM INSERTED END 2.数据同步删除:如有

02.SQL_表的删除和更新

一. 表的删除 DROP TABLE <表名>; //drop table DROP TABLE shohin; 注意: 无法恢复 二. 表的定义更新 (无法恢复) ALTER TABLE 语句. //alter table 对已建表增加行或者列. 1. 添加列的 ALTER TABLE 语句. ALTER TABLE <表名> ADD COLUMN <列的定义>; //column 列 注意: Oracle 和 SQL Sever 中不用写 COLUMN ALTER

Sqlite嵌入式数据库的安装、建库、建表、更新表结构以及数据导入导出等等详细过程记录

简介: SQLite 是实现了SQL 92标准的一个大子集的嵌入式数据库.其以在一个库中组合了数据库引擎和接口,能将所有数据存储于单个文件中而著名.我觉得SQLite的功能一定程度上居于MySQL 和PostgreSQL之间.尽管如此,在性能上面,SQLite常常快2-3倍 (甚至更多).这利益于其高度调整了的内部架构,因为它除去了服务器端到客户端和客户端到服务器端的通信. 而令人印象深刻的特点是你可将你的整个数据库系统放在其中.利用非常高效的内存组织,SQLite只需在很小的内存中维护其很小的

SQLServer创建触发器,更新表

在SQLServer,触发器,插入.更新.删除状态: CREATE TRIGGER t_inms_alarms ON [PHS].[dbo].[AlarmCurrent] FOR INSERT, DELETE AS DECLARE @rows int SELECT @rows = @@rowcount IF @rows = 0 return --如果表是插入,则同步更新AlarmsMiddleTbl IF EXISTS(SELECT 1 FROM inserted) AND NOT EXISTS

触发器实现多表之间的增加、删除及更新

常见的触发器有三种:分别应用于Insert,Update,Delete事件 1.数据同步增加: 如有两张表:A表和B表,创建触发器使当A表插入数据后B表也同步插入数据.其中B表插入数据的字段需要同A表中的字段相对应. 1 create trigger 触发器名称 2 on A表 3 after insert 4 as 5 begin insert into B表(B表字段1,B表字段2,B表字段3) 6 select A表字段1,A表字段2,A表字段3 7 from inserted 8 end

【SqlServer】【问题收集】删除同一张表中完全相同的记录

1   概述 在Sqlserver中,当通过SqlServer设计器删除同一张表中两条完全相同的记录时,会弹出如下提示: 点击“是” 弹出如下提示,不让删除 2   问题解决 这个问题很简单,用DELETE语句删除即可. 如果清除表格所有数据 DELETE EmployeeInfo 如果仅仅删除相同的记录 DELETE EmployeeInfo WHERE EmployyeID='NX001' 3   版权 感谢您的阅读,若有不足之处,欢迎指教,共同学习.共同进步. 博主网址:http://ww