Microsoft Windows PowerShell và SQL Server 2005 SMO – Phần 2
Ngu
ồn : quantrimang.com
The MA
K
Phần I của loạt này chỉ dẫn cách thiết lập và sử dụng lệnh PowerShell và
SMO đơn giản.Trong phần II này chúng ta sẽ tìm hiểu thêm về PowerShell
cũng như các đặc tính của nó kết hợp với SMO. Nếu bạn đã từng biết sơ
qua các ngôn ngữ lập trình như PERL, Python hay C thì có thể tìm thấy
điểm tương đồng với các cú pháp sử dụng trong PowerShell. Thêm vào đó
nó cũng tương thích với các hệ điều hành nh
ư UNIX, Linux, MS-DOS...
Mặc dù PowerShell có sức mạnh lớn nhưng không phải nhiệm vụ nào cũng có
thể sử lý được bằng PowerShell. Tuy nhiên, các thiếu sót của Power Shell có thể
được lấp đầy bằng cách sử dụng các lớp .NET và các trình quản lý Window, như
là WMI. Kỹ thuật tự động hoá của các cmdlet Power Shell có thể được hoàn
thành bằng tạo mã kịch bản.
Phục hồi ngày và giờ hệ thống sử dụng Power Shell
Một giá tr
ị ngày giờ đơn giản của hệ thống có thể được phục hồi sử dụng một
cmdlet “date” đơn giản. [Hình 1.0]
Cmdlet:
date
Kết quả:
Tuesday, June 12, 2007 8:52:27 AM
Hình 1.0
Giá trị Date and Time của hệ thống có thể phục hồi bằng các sử dụng một lớp
Day : 12
DayOfWeek : 2
Hour : 9
Milliseconds :
Minute : 3
Month : 6
Quarter : 2
Second : 0
WeekInMonth : 3
Year : 2007
__GENUS : 2
__CLASS : Win32_UTCTime
__SUPERCLASS : Win32_CurrentTime
__DYNASTY : Win32_CurrentTime
__RELPATH : Win32_UTCTime=@
__PROPERTY_COUNT : 10
__DERIVATION : {Win32_CurrentTime}
__SERVER : HOME
__NAMESPACE : root\cimv2
__PATH : \\HOME\root\cimv2:Win32_UTCTime=@
Day : 12
DayOfWeek : 2
Hour : 13
Milliseconds :
Minute : 3
Month : 6
Quarter : 2
Second : 0
WeekInMonth : 3
Year : 2007
6/12/2007 9:35:18 AM
Ví dụ tương tự này có thể được sử dụng cho bất kỳ truy vấn adhoc nào. Hãy
thực hiện thủ tục được lưu trữ “sp_helpdb” trình bày dưới đây.
Cmdlets
$SqlConnection = New-Object
System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString =
"Server=HOME\SQLEXPRESS;Database=master;Integrated
Security=True"
$SqlCmd = New-Object System.Data.SqlClient.SqlCommand
$SqlCmd.CommandText = "sp_helpdb"
$SqlCmd.Connection = $SqlConnection
$SqlAdapter = New-Object
System.Data.SqlClient.SqlDataAdapter
$SqlAdapter.SelectCommand = $SqlCmd
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet)
$SqlConnection.Close()
$DataSet.Tables[0]
Kết quả
name : master
db_size : 4.75 MB
owner : sa