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
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 ...
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ìm kiếm theo từ khóa liên quan:
Cơ sở dữ liệu An ninh – Bảo mật Công nghệ thông tin Quản trị mạng Thủ thuật máy tínhGợi ý tài liệu liên quan:
-
52 trang 429 1 0
-
62 trang 401 3 0
-
Đề thi kết thúc học phần học kì 2 môn Cơ sở dữ liệu năm 2019-2020 có đáp án - Trường ĐH Đồng Tháp
5 trang 377 6 0 -
24 trang 351 1 0
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 310 0 0 -
Làm việc với Read Only Domain Controllers
20 trang 298 0 0 -
74 trang 294 0 0
-
Giáo trình Cơ sở dữ liệu: Phần 2 - TS. Nguyễn Hoàng Sơn
158 trang 291 0 0 -
13 trang 290 0 0
-
96 trang 289 0 0