Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Đổi tên lược đồ máy chủ SQL

Nếu bạn có một số lượng lớn các đối tượng trong một lược đồ, bạn có thể sử dụng một cái gì đó như thế này để tạo tất cả các thay đổi tự động (nó chỉ thực hiện các bảng và dạng xem, vì vậy trước khi chạy, bạn có thể cần phải mở rộng nó thành SP, UDF, v.v. .)

USE SandBox

DECLARE @OldSchema AS varchar(255)
DECLARE @NewSchema AS varchar(255)
DECLARE @newLine AS varchar(2) = CHAR(13) + CHAR(10)

SET @OldSchema = 'dbo'
SET @NewSchema = 'StackOverflow'

DECLARE @sql AS varchar(MAX)

SET @sql = 'CREATE SCHEMA [' + @NewSchema + ']' + @newLine
SELECT @sql = @sql + 'GO' + @newLine
SELECT @sql = @sql + 'ALTER SCHEMA [' + @NewSchema + '] TRANSFER [' + TABLE_SCHEMA + '].[' + TABLE_NAME + ']'
     + @newLine
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_SCHEMA = @OldSchema

SET @sql = @sql + 'DROP SCHEMA [' + @OldSchema + ']'

PRINT @sql -- NOTE PRINT HAS AN 8000 byte limit - 8000 varchar/4000 nvarchar - see comments
IF (0=1) EXEC (@sql)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tôi có thể chạy các gói SSIS với phiên bản SQL Server Express hoặc Web hoặc Nhóm làm việc không?

  2. Xem sp_execute đang làm gì

  3. SQL Server 2008:Tôi có 1000 bảng, tôi cần biết bảng nào có dữ liệu

  4. Bạn làm gì trong SQL Server để TẠO HOẶC ALTER?

  5. Định dạng SQL Server các vị trí thập phân với dấu phẩy