因为对SQL操作比较多,但有些操作其实都是重复性的,只是参数不太一样了,例如silo id, server name 等。希望可以通过powershell脚本提高效率。

尝试如下

1. 使用PowerShell 连接数据库,本地尝试,来至:http://www.pstips.net/getting-sql-server-connection-string.html.

当你用Powershell获取SQL连接字符串,你会需要“连接字符串”,这段字符串要包涵连接数据库实例的多个片段。

传统方法构建一个这样的字符串也不容易,下面有段函数也许可以帮助您完成:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#requires -Version 2
function Get-ConnectionString
{
    $Path Join-Path -Path $env:TEMP -ChildPath 'dummy.udl'
   
    $null New-Item -Path $Path -ItemType File -Force
   
    $CommandArg """$env:CommonProgramFiles\System\OLE DB\oledb32.dll"",OpenDSLFile "  $Path
 
    Start-Process -FilePath Rundll32.exe -ArgumentList $CommandArg -Wait
    $ConnectionString Get-Content -Path $Path Select-Object -Last 1
    $ConnectionString | clip.exe
    Write-Warning -Message 'Connection String is also available from clipboard'
    $ConnectionString
}

当你运行Get-ConnectionString,Powershell会弹出一个对话框,你可以提交一个测试连接,接着关闭窗口,Powershell将返回一个一个连接字符串。

使用如下配置连接成功。

2. Powershell 连接SQL数据库,来至:http://www.pstips.net/accessing-an-sql-database-with-a-connection-string.html

先前的技巧中我们学习了如何创建一个SQL连接字符串,当你有了一个连接字符串并且它是有效的,接下来的例子就是演示如何向数据库提交一个SQL命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#requires -Version 2
 
# make sure this is a valid connection string to your database
# see www.connectionstrings.com for reference
$connectionString 'Provider=SQLOLEDB.1;Password=.topSecret!;Persist Security
 Info=True;User ID=sa;Initial Catalog=test;Data Source=myDBServer\SQLEXPRESS2012'
 
# make sure this is valid SQL for your database
# so in this case, make sure there is a table called "test"
$sql 'select * from test'
 
$db New-Object -ComObject ADODB.Connection
$db.Open($connectionString)
$rs $db.Execute($sql)
 
$results While ($rs.EOF -eq $false)
{
    $CustomObject New-Object -TypeName PSObject
    $rs.Fields | ForEach-Object -Process {
        $CustomObject Add-Member -MemberType NoteProperty -Name $_.Name -Value $_.Value
    }
    $CustomObject
    $rs.MoveNext()
}
$results Out-GridView

PowerShell 连接SQL的更多相关文章

  1. 【转】PowerShell 连接SQL Server 数据库 - ADO.NET

    转至:http://www.pstips.net/connect-sql-database.html PowerShell 通过ADO.NET连接SQL Server数据库,并执行SQL脚本.工作中整 ...

  2. Unity3d连接SQL Server数据库出现SocketException: 使用了与请求的协议不兼容的地址错误

    这两天,同学问我Unity3d连接SQL Server的问题,当时我只是简单的说:“应该一样吧,就是那简单的几句啊”.之后他让我试了下,我才发现有问题了.故此写下一篇博客,要牢记这件事的教训,操作数据 ...

  3. delphi连接sql存储过程

    针对返回结果为参数的 一. 先建立自己的存储过程 ALTER PROCEDURE [dbo].[REName] ) AS BEGIN select ROW_NUMBER() over(order by ...

  4. vbs连接sql server及写文件操作

    此段代码是连接SQL SERVER的 代码内connMMSQL的参数要根据实际情况传入 Function connMMSQL(ip,user,pwd,database,strsql) Dim conn ...

  5. python 使用pymssql连接sql server数据库

    python 使用pymssql连接sql server数据库   #coding=utf-8 #!/usr/bin/env python#------------------------------ ...

  6. NetBeans连接SQL server数据库教程

    不废话,直接开始 1.下载sqljdbc.jar 可以从微软中国官方网站下载 SQLJDBC微软中国 笔者提供一个网盘链接Sqljdbc.jar 4个压缩包视版本选择,SQL 2012 用sqljdb ...

  7. JDBC连接SQL Server代码模板

    *                  JDBC连接SQL Server数据库 代码模板* Connection: 连接数据库并担任传送数据的任务:* Statement :  执行SQL语句:* Re ...

  8. FireDAC 连接SQL Server一些要注意的地方

    TFDConnection: FetchOptions.Mode 设置为fmAll, 返回全部结果, 否则默认只返回前50条, 效果与open以后再执行FetchAll一样 Specifies how ...

  9. PHP5.6.15连接Sql Server 2008配置方案

    php5.6的如果想连接Sql Server 2008数据库,需要手动配置扩展和安装一个驱动. 下载SQL Server Driver for PHP的扩展包,64位系统的官方不支持,找到一个非官方的 ...

随机推荐

  1. Python之路第一课Day3--随堂笔记(文件操作)

    一.集合的介绍 1.集合操作 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集.差集.并集等关系 常用操作 s = se ...

  2. Open Data Structure Templates

    数据结构模板 Chen 2016/12/22 前言 本篇博客的模板,全部是我纯手打的,如果有发现错误,请在下方留言指正:).欢迎大家参考. 有一些地方还不是很完善,等过一阵子用C++实现和部分重构下. ...

  3. Thinking in Java——笔记(13)

    Strings Immutable Strings Objects of the String class are immutable. Every method in the class that ...

  4. 给Source Insight做个外挂系列之二--将本地代码注入到Source Insight进程

    上一篇文章介绍了如何发现正在运行的“Source Insight”窗口,本篇将介绍“TabSiPlus”是如何进行代码注入的.Windows 9x以后的Windows操作系统都对进程空间进行了严格的保 ...

  5. 原生JS事件绑定方法以及jQuery绑定事件方法bind、live、on、delegate的区别

    一.原生JS事件绑定方法: 1.通过HTML属性进行事件处理函数的绑定如: <a href="#" onclick="f()"> 2.通过JavaS ...

  6. Corex-M0 系统嘀嗒定时器 Systick 详解

  7. Warning: simplexml_load_string(): Entity: line 432: parser error : EntityRef: expecting ';'

    Warning: simplexml_load_string(): Entity: line 432: parser error : EntityRef: expecting ';' characte ...

  8. WPF 组合快捷键(Ctrl+C)

    页面程序: <Window x:Class="WpfDataGrid.Window1"        xmlns="http://schemas.microsoft ...

  9. 在使用 CryptoAPITransform进行加密时异常要调用Reset()

    在使用 CryptoAPITransform进行加密时异常要调用Reset() 通过.net源码能看到Reset()里有 public void Reset() { _depadBuffer = nu ...

  10. C# GMap下提供一个高德地图

    using System; using GMap.NET.Internals; using GMap.NET.Projections; namespace GMap.NET.MapProviders ...