powershell连接数据库_PowerShell 连接SQL Server 数据库
PowerShell 通過ADO.NET連接SQL Server數(shù)據(jù)庫,并執(zhí)行SQL腳本。工作中整理的一小段腳本,后來沒有用上,先記錄在這里:
建立數(shù)據(jù)庫連接
查詢返回一個DataTatble對象
執(zhí)行一條SQL語句
通過事物執(zhí)行多條SQL語句
#
# 建立數(shù)據(jù)庫連接.
#
function New-SqlConnection([string]$connectionStr)
{
$SqlConnection = New-Object System.Data.SqlClient.SqlConnection
$SqlConnection.ConnectionString = $connectionStr
try{
$SqlConnection.Open()
Write-Host 'Connected to sql server.'
return $SqlConnection
}
catch [exception] {
Write-Warning ('Connect to database failed with error message:{0}' -f ,$_)
$SqlConnection.Dispose()
return $null
}
}
#
# 查詢返回一個DataTable對象
#
function Get-SqlDataTable
{
param
(
[System.Data.SqlClient.SqlConnection]$SqlConnection,
[string]$query
)
$dataSet = new-object "System.Data.DataSet" "WrestlersDataset"
$dataAdapter = new-object "System.Data.SqlClient.SqlDataAdapter" ($query,$SqlConnection)
$dataAdapter.Fill($dataSet) | Out-Null
return $dataSet.Tables | select -First 1
}
#
# 執(zhí)行一條SQL命令
#
function Execute-SqlCommandNonQuery
{
param
(
[System.Data.SqlClient.SqlConnection]$SqlConnection,
[string]$Command
)
$cmd = $SqlConnection.CreateCommand()
try
{
$cmd.CommandText = $Command
$cmd.ExecuteNonQuery() | Out-Null
return $true
}
catch [Exception] {
Write-Warning ('Execute Sql command failed with error message:{0}' -f $_)
return $false
}
finally{
$SqlConnection.Close()
}
}
#
# 通過事物處理執(zhí)行多條SQL命令
#
function Execute-SqlCommandsNonQuery
{
param
(
[System.Data.SqlClient.SqlConnection]$SqlConnection,
[string[]]$Commands
)
$transaction = $SqlConnection.BeginTransaction()
$command = $SqlConnection.CreateCommand()
$command.Transaction = $transaction
try
{
foreach($cmd in $Commands) {
#Write-Host $cmd -ForegroundColor Blue
$command.CommandText = $cmd
$command.ExecuteNonQuery()
}
$transaction.Commit()
return $true
}
catch [Exception] {
$transaction.Rollback()
Write-Warning ('Execute Sql commands failed with error message:{0}' -f $_)
return $false
}
finally{
$SqlConnection.Close()
}
}
×用微信掃描并分享
總結(jié)
以上是生活随笔為你收集整理的powershell连接数据库_PowerShell 连接SQL Server 数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 加了好友怎么还掉血_微信聊天窗口出现风险
- 下一篇: 自动获取mysql建表语句_脚本工具--