Danh mục

Microsoft Windows PowerShell và SQL Server 2005 SMO – Phần 3

Số trang: 10      Loại file: pdf      Dung lượng: 506.09 KB      Lượt xem: 10      Lượt tải: 0    
10.10.2023

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Phần I và Phần II của loạt bài này đã chỉ dẫn các thiết lập PowerShell và SMO, các cmdlet WMI đơn giản. Phần 3 này sẽ giới thiệu cách viết mã cho cmdlet PowerShell và thực thi chúng. Mã kịch bản là yếu tố cần thiết cho các thao tác tự động và lặp đi lặp lại.
Nội dung trích xuất từ tài liệu:
Microsoft Windows PowerShell và SQL Server 2005 SMO – Phần 3Microsoft Windows PowerShell và SQL Server 2005 SMO – Phần 3Nguồn:quantrimang.com The MAKPhần I và Phần II của loạt bài này đã chỉ dẫn các thiết lập PowerShell và SMO,các cmdlet WMI đơn giản. Phần 3 này sẽ giới thiệu cách viết mã cho cmdletPowerShell và thực thi chúng. Mã kịch bản là yếu tố cần thiết cho các thao tác tựđộng và lặp đi lặp lại.Chính sách thực thi4 loại chính sách thực thi khác nhau của Windows PowerShell là Restricted,AllSigned, RemoteSigned và Unrestricted. Chúng ta sẽ tìm chính sách thực thicủa Windows PowerShell trên vùng làm việc. [Hình 1.0]Cmdlet:Get-executionpolicyKết quả:Restricted Hình 1.0Giả sử ta có dòng code sau trên PowerShell script a.ps1. [Hình 1.1]Echo “test” Hình 1.1Nếu thử thực hiện mã lệnh khi chính sách thực thi của PowerShell là restricted,thì sẽ xuất hiện thông báo lỗi sau. [Hình 1.2]Lệnh thực hiện mã PowerShell. /a.ps1Kết quảFile C:psa.ps1 cannot be loaded because the execution ofscripts is disabledon this system. Please see get-help about_signing formore details.At line:1 char:3+ ./a Hình 1.3Bây giờ hãy thử thực thi đoạn mã a.ps1 như hiển thị trong hình dưới đây. [Hình1.4]Lệnh./aKết quảTest Hình 1.4Điều khiển Input trong mã PowerShellKhi thực hiện các thao tác lặp đi lặp lại, chúng ta thích ứng dụng để tương táchơn và xây dựng ứng dụng để đòi hỏi đầu vào từ người sử dụng. Ta có thể thựchiện tương tự với PowerShell.Hãy tạo một mã PowerShell chấp nhận tên của trường SQL Server và tên cơ sởdữ liệu. Ngoài ra, hãy để PowerShell hiển thị tất cả các bảng trên cơ sở dữ liệuđó. Điều này có thể được thực hiện với cmdlet read-host.Thí dụ 1: [Hình 1.5]Read-host “Please Enter Second Number”. Hình 1.5Thí dụ 2Chúng ta có thể gán giá trị cmdlet là một biến số. [Hình 1.6]$a=read-host Please Enter Second Number $a Hình 1.6Kết hợp thí dụ 1 và thí dụ 2 kết nối với SQL Server.Tạo mã PowerShell có tên connectsql.ps1. [Hình 1.7]$SQLSERVER=read-host Enter SQL Server Name:$Database=read-host Enter Database Name:$SqlConnection = New-ObjectSystem.Data.SqlClient.SqlConnection$SqlConnection.ConnectionString =Server=$SQLSERVER;Database=$DATABASE;IntegratedSecurity=True$SqlCmd = New-Object System.Data.SqlClient.SqlCommand$SqlCmd.CommandText = select name from sysobjects wheretype=u$SqlCmd.Connection = $SqlConnection$SqlAdapter = New-ObjectSystem.Data.SqlClient.SqlDataAdapter$SqlAdapter.SelectCommand = $SqlCmd$DataSet = New-Object System.Data.DataSet$SqlAdapter.Fill($DataSet)$SqlConnection.Close()$DataSet.Tables[0] Hình 1.7Bây giờ hãy thực hiện mã connectsql.ps1 trên. [Hình 1.8]./connectsqlEnter SQL Server Name:: HOMESQLEXPRESSEnter Database Name:: AdventureWorksChú ý: HOME là máy chủ và SQLEXPRESS là tên ví dụ của SQL Server. Hãythay thế tên này bằng tên máy chủ và SQL Server của bạn. AdventureWorks làtên cơ sở dữ liệu. Bạn cũng chú ý thay thế tên cơ sở dữ liệu này cho tương ứngvới tên cơ sở dữ liệu trên máy chủ. Hình 1.8Mã connectsql gán giá trị được nhập vào các biến $SQLSERVER và$DATABASE, kết nối chuỗi sử dụng các biến đó và hiển thị ra kết quả.Kết quả:name----ProductProductPhotoStoreContactAddressProductReviewTransactionHistoryAddressTypeProductSubcategoryAWBuildVersionTransactionHistoryArchiveProductVendorBillOfMaterialsUnitMeasureVendorPurchaseOrderDetailContactVendorAddressVendorContactPurchaseOrderHeaderContactCreditCardWorkOrderContactTypeCountryRegionCurrencyWorkOrderRoutingCountryRegionCreditCardCultureCurrencySalesOrderDetailCurrencyRateCustomerSalesOrderHeaderCustomerAddressDepartmentDocumentEmployeeSalesOrderHeaderSalesReasonSalesPersonEmployeeAddressEmployeeDepartmentHistoryEmployeePayHistorySalesPersonQuotaHistoryIllustrationSalesReasonIndividualSalesTaxRateJobCandidateLocationSalesTerritoryProductSalesTerritoryHistoryScrapReasonShiftProductCategoryShipMethodProductCostHistoryProductDescriptionShoppingCartItemProductDocumentProductInventorySpecialOfferProductListPriceHistorySpecialOfferProductProductModelStateProvinceProductModelIllustrationDatabaseLogProductModelProductDescriptionCultureErrorLogStoreProductPhotoTuy nhiên, khi viết mã tự động, bạn không muốn người dùng nhập dữ liệu. Thayvào đó, ta nên chấp nhận các tham số.Hãy nâng cấp đoạn mã trên bằng cách chấp nhận các tham số.[Hình 1.9]param ([string] $SQLSERVER,[string] $Database)$SqlConnection = New-ObjectSystem.Data.SqlClient.SqlConnection$SqlConnection.Connec ...

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: