当前位置: 首页 > news >正文

建设招聘网站需要哪些资质人力资源培训与开发

建设招聘网站需要哪些资质,人力资源培训与开发,做平台好还是做网站好,个人网站建设基本定位在实际开发中,我们常常会遇到需要批量删除表,且具有共同特征的情况,例如:找出表名中数字结尾的表之类的,本文我将以3中类似情况为例,来示范并解说此类需求如何完成: 第一种,批量删除…

在实际开发中,我们常常会遇到需要批量删除表,且具有共同特征的情况,例如:找出表名中数字结尾的表之类的,本文我将以3中类似情况为例,来示范并解说此类需求如何完成:
第一种,批量删除表名中数字结尾的表
在 SQL Server 中,你可以使用动态 SQL 和系统视图来生成并执行删除表的语句。以下是一个示例脚本,它将遍历 JZMES 库中所有表名以数字结尾的表,并生成 DROP TABLE 语句来删除这些表。
请注意,执行这样的操作非常危险,因为它会永久删除表及其数据。务必在执行此脚本之前备份数据库,并仔细验证表名模式。
以下是一个示例脚本:

USE JZMES; -- 切换到目标数据库  
GO  -- 声明一个变量来存储动态 SQL 语句  
DECLARE @sql NVARCHAR(MAX) = N'';  -- 遍历所有表,找到表名以数字结尾的表  
SELECT @sql = @sql + 'DROP TABLE ' + QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) + ';' + CHAR(13)  
FROM INFORMATION_SCHEMA.TABLES  
WHERE TABLE_TYPE = 'BASE TABLE' -- 只考虑基本表(不包括视图)  
AND TABLE_NAME LIKE '%[0-9]'; -- 表名以数字结尾  -- 打印生成的 SQL 语句(可选,用于验证)  
PRINT @sql;  -- 执行生成的 SQL 语句(请确保在执行之前已经仔细验证)  
-- EXEC sp_executesql @sql;

脚本说明:
切换到目标数据库:使用 USE JZMES; 切换到你要操作的数据库。
声明变量:使用 DECLARE @sql NVARCHAR(MAX) = N’'; 声明一个变量来存储生成的 DROP TABLE 语句。
生成动态 SQL:
使用 SELECT 语句从 INFORMATION_SCHEMA.TABLES 中选择所有基本表(不包括视图)。
筛选表名以数字结尾的表(使用 LIKE ‘%[0-9]’)。
使用 QUOTENAME 函数确保表名和模式名被正确引用,防止 SQL 注入。
将生成的 DROP TABLE 语句拼接到 @sql 变量中。
打印生成的 SQL 语句:使用 PRINT @sql; 打印生成的 DROP TABLE 语句,用于验证。
执行生成的 SQL 语句:
使用 EXEC sp_executesql @sql; 执行生成的 SQL 语句。
注意:这一步是实际删除表的步骤,非常危险。务必在执行之前仔细验证生成的 SQL 语句,确保不会误删重要数据。
第二种,批量删除所有表名中非字母结尾的表
这次你需要调整 LIKE 子句来匹配非字母结尾的表名。由于 SQL Server 的 LIKE 子句不支持直接匹配非字母字符,你可以使用字符范围 [^a-zA-Z] 来表示非字母字符。不过,请注意,LIKE 子句在 SQL Server 中是区分大小写的,但表名在内部存储时通常是不区分大小写的(这取决于数据库和服务器配置)。然而,为了匹配非字母字符,我们仍然可以使用 [^a-zA-Z]。

但是,有一个问题:LIKE ‘%[^a-zA-Z]’ 实际上会匹配任何以非字母字符结尾的字符串,包括那些以数字、特殊字符或空格结尾的字符串。如果你只想删除那些以数字或特殊字符结尾(而不是空格或其他非字母非数字字符),你可能需要更复杂的模式匹配,或者使用正则表达式(但 SQL Server 的 LIKE 子句不支持正则表达式)。
不过,对于大多数情况,下面展示的语句应该足够,下面仅展示核心内容:

SELECT @sql = @sql + 'DROP TABLE ' + QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) + ';' + CHAR(13)  
FROM INFORMATION_SCHEMA.TABLES  
WHERE TABLE_TYPE = 'BASE TABLE' -- 只考虑基本表(不包括视图)  
AND TABLE_NAME LIKE '%[^a-zA-Z]'; -- 表名非字母结尾(注意:这里可能匹配到以空格或特殊字符结尾的表)  

第三种,删除表名里“tmp”开头的表
经过上面俩种情况的编写,下面仅展示核心语句:

-- 遍历所有表,找到表名以 "tmp" 开头的表  
SELECT @sql = @sql + 'DROP TABLE ' + QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) + ';' + CHAR(13)  
FROM INFORMATION_SCHEMA.TABLES  
WHERE TABLE_TYPE = 'BASE TABLE' -- 只考虑基本表(不包括视图)  
AND TABLE_NAME LIKE 'tmp%'; -- 表名以 "tmp" 开头  

以上三种情况,从业务开发角度来说,都建议只执行到PRINT @sql;尽量增加监察环境,一昧直接执行,可能会对表结构造成不可逆的伤害,通过PRINT的检查,我们再执行PRINT中的语句会更好
在这里插入图片描述

http://www.hengruixuexiao.com/news/17278.html

相关文章:

  • 做标书有哪些网站能接到镇江网站建设
  • 南宁营销型网站建设公司网站广告收费标准
  • 大尺度做爰网站在线seo网络推广招聘
  • 淘宝客怎么做推广桂林seo顾问
  • 哪些网站专做新闻微信软文范例
  • 中国服务外包网seox
  • 推荐完善政府网站建设外贸独立站怎么建站
  • 房地产公司排名南阳本地网络推广优化公司
  • 企模网站有网站模板怎么建站
  • 做网站私活在哪接最新新闻
  • 网站模板加后台推广百度百科
  • 镇江网站建设机构唐山百度提升优化
  • 网站动态画面用啥做全网推广成功再收费
  • 重庆綦江网站制作公司推荐站长工具关键词挖掘
  • 网站上做播放器流量算谁的站长之家新网址
  • 阿里云 网站备案惠州seo外包费用
  • wordpress默认登录地址seo零基础入门教程
  • 管理信息系统网站建设优化整站
  • 做网站设计用到的软件足球进球排行榜
  • 专业做网站全包外链link
  • 做网站应该了解什么汕头百度关键词推广
  • wordpress评论生成网络优化基础知识
  • 成都有什么互联网公司seo刷排名软件
  • 做网站需要懂程序吗网站优化培训
  • 网站建设常用字体广州市人民政府新闻办公室
  • 收藏网站的链接怎么做在线网站排名工具
  • 宁波 seo整体优化百度网站优化软件
  • 广阳网站制作百度广告投诉电话
  • 网站要怎么做吸客户引眼球seo专员是干嘛的
  • 找网络公司做网站需要注意什么太原seo自媒体