繁体   English   中英

在多个架构中更改具有相同名称的表

[英]Alter table with same name in multiple schema

我在同一个mysql服务器的100个不同架构中具有相同名称(name-xxx)的表。 我想使用一个脚本来更改所有名为xxx的表(无需在脚本中硬编码模式名称)

您可以尝试类似的方法:

DECLARE @alterQ NVARCHAR(max)
DECLARE @table_name VARCHAR(45)

DECLARE tables_curs CURSOR FOR
  SELECT t.table_name
    FROM INFORMATION_SCHEMA.TABLES t
   WHERE t.table_name = 'xxx'
     AND t.table_catalog = 'db_name'

OPEN tables_curs 
FETCH tables_curs INTO @table_name

WHILE @@Fetch_Status = 0
BEGIN 

  SET @table_name  = N'ALTER TABLE @table_name ...'
  EXEC sp_executesql @alterQ

END

CLOSE tables_curs 
DEALLOCATE tables_curs 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM