Tài liệu Microsoft Windows PowerShell và SQL Server 2005 SMO – Phần 10 - Pdf 91

Microsoft Windows PowerShell và SQL Server 2005 SMO – Phần 10
Ngu
ồn : quantrimang.com 
The MAK

Sử dụng kịch bản PowerShell để tạo kịch bản SQL Server cho cơ sở dữ
liệu và các bảng

Phần 10 này chúng tôi sẽ giới thiệu cách sử dụng các kịch bản PowerShell kết
hợp với SMO và các tham số để tạo kịch bản SQL Server. Việc tạo các kịch bản
SQL Server là một nhiệm vụ quan trọng cho quản trị viên và các chuyên gia phát
triển cơ sở
dữ liệu SQL Server.

Chúng ta hãy giả dụ rằng muốn có một script PowerShell để tạo kịch bản “Create
Database” cho một cơ sở dữ liệu hoặc kịch bản “Create object” cho tất cả các
đối tượng từ một cơ sở dữ liệu đã có. Thêm vào đó, tên máy chủ và tên cơ sở
dữ liệu sẽ được thông qua như các tham số đối với kịch bản PowerShell.

Chúng ta có thể thực hiện công việ
c này bằng cách tạo một kịch bản PowerShell
như bên dưới.

Tạo C:\PS\ScriptSQL.ps1 như thể hiện bên dưới. Tham khảo hình 1.0
param
(
[string] $ServerName,
[string] $DatabaseName,
[string] $scriptType
)


:

ScriptSQL là kịch bản của ScriptSQL.ps1 trong thư mục c:\ps

HOME là hostname

SQLEXPRESS là tên máy chủ SQL instance trên host HOME

Admin là tên cơ sở dữ liệu cư trú trong SQLEXPRESS

Database là tham số khi được thông qua sẽ tạo kịch bản “Create
database”
Script này tạo kịch bản “Create Database” bên dưới (Hình 1.2)
Database Scripts
-----------------
CREATE DATABASE [Admin] ON PRIMARY
( NAME = N'admin', FILENAME = N'C:\Program Files\Microsoft
SQL Server\MSSQL.1\MSSQL\DATA\admin.mdf' , SIZE = 2240KB ,
M
AXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
LOG ON
( NAME = N'admin_log', FILENAME = N'C:\Program
Files\Microsoft SQL
Server\MSSQL.1\MSSQL\DATA\admin_log.LDF' , SIZE = 76
8KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
COLLATE SQL_Latin1_General_CP1_CI_AS
EXEC dbo.sp_dbcmptlevel @dbname=N'Admin', @new_cmptlevel=90
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
begin
EXEC [Admin].[dbo].[sp_fulltext_database] @action =

Hình 1.2
Lúc này thực thi kịch bản PowerShell như bên dưới (Hình 1.3)
./ScriptSQL "HOME\SQLEXPRESS" "VixiaTrack""Tables"
Hình 1.3
Giải thích các tham số
:

ScriptSQL là kịch bản ScriptSQL.ps1 trong thư mục c:\ps

HOME là hostname

SQLEXPRESS là tên máy chủ SQL Server instance trên host HOME

VixiaTrack là tên cơ sở dữ liệu cư trú trong SQLEXPRESS

“Tables” là tham số khi được thông gua sẽ tạo kịch bản “Create table”
Script này sẽ tạo kịch bản “Create Database” dưới đây (Hình 1.4)
SET QUOTED_IDENTIFIER ON
CREATE TABLE [dbo].[StockCriteriaHistory](
[StockCriteriaHistoryID] [int] IDENTITY(1,1) NOT
NULL,
[LocationID] [int] NULL,
[LocationDescription] [varchar](100) COLLATE
SQL_Latin1_General_CP1_CI_AS NULL,
[SiteID] [int] NULL,
[Site] [varchar](100) COLLATE
SQL_Latin1_General_CP1_CI_AS NULL,
[WingID] [int] NULL,
[Wing] [varchar](100) COLLATE
SQL_Latin1_General_CP1_CI_AS NULL,


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status