powershell数据库操作函数
来源:互联网 发布:sql 连续语句 编辑:程序博客网 时间:2024/05/22 14:03
#region 配置函数 cfunction c{ #====创建object $o=new-object psobject #-------数据库连接配置-------- $o|Add-Member -MemberType NoteProperty -Name t -Value 'mysql' #数据库类型 $o|Add-Member -MemberType NoteProperty -Name h -Value 'localhost' #主机地址 $o|Add-Member -MemberType NoteProperty -Name u -Value 'root' #登录名 $o|Add-Member -MemberType NoteProperty -Name p -Value 'root' #登录密码 $o|Add-Member -MemberType NoteProperty -Name d -Value 'monitor' #默认访问的数据库 $o|Add-Member -MemberType NoteProperty -Name c -Value 'utf8' #编码 #--------expand-------- #--------expand-------- #====对传入参数进行验证并输出返回值 switch($args[0]){ 't'{return $o.t;break} 'h'{return $o.h;break} 'u'{return $o.u;break} 'p'{return $o.p;break} 'd'{return $o.d;break} 'c'{return $o.c;break} default{ Write-Warning "当前参数 $args 无效,请检查参数是否正确,可用参数及表示如下:" write-host t : 表示数据库类型 -ForegroundColor Yellow write-host h : 表示主机地址 -ForegroundColor Yellow write-host u : 表示登录数据库的账号 -ForegroundColor Yellow write-host p : 表示登录数据库的密码 -ForegroundColor Yellow write-host d : 表示默认访问的数据库名 -ForegroundColor Yellow write-host d : 表示连接数据库所使用的字符集 -ForegroundColor Yellow exit } }}#endregion#region 数据库操作函数 _odb_function _odb_{param($funName, #执行的函数名$sql #执行的sql脚本) #====从配置函数c中,获取配置信息 $dbtpye=c t $server=c h $uid=c u $pwd=c p $DBName=c d $char=c c #====验证数据库类型,创建数据库对象 switch($dbtpye){ 'mssql'{ $conn = New-Object System.Data.SqlClient.SqlConnection $cmd = new-object System.Data.SqlClient.SqlCommand $SqlAdapter = New-Object system.Data.SqlClient.SqlDataAdapter break } 'mysql'{ try{ [void][System.Reflection.Assembly]::LoadWithPartialName("mysql.data") }catch{Write-Warning '请安装mysql连接组件mysql-connector-net-6.5.4'} $conn = New-Object MySql.Data.MySqlClient.MySqlConnection $cmd = new-object mysql.data.mysqlclient.mysqlcommand $SqlAdapter = New-Object mysql.Data.mySqlClient.mySqlDataAdapter break } }try{$conn.ConnectionString="server=$server;uid=$uid;pwd=$PWD;database=$DBName;charset=$char"$conn.open()}catch{Write-warning '数据库连接错误!'return $false}$cmd.Connection=$conn #region用于写入、更新等无返回值操作 _exec_function _exec_{$cmd.CommandText=$sql[void]$cmd.ExecuteNonQuery()}#endregion#region用于查询、有返回值操作 _get_function _get_{$cmd.commandtext=$sql $SqlAdapter.SelectCommand = $cmd $DataSet = New-Object System.Data.DataSet [void]$SqlAdapter.Fill($DataSet,"data") return $dataset.tables['data']}#endregion#判断传入值,并执行相应函数 switch($funName){ '_exec_'{_exec_;break} '_get_'{_get_;break} }$conn.Close()}#endregion
c为配置函数,可扩展,所有的配置信息的设置与获取都由c完成。
函数的使用也非常简单,如果需要对数据进行写入操作,执行以下代码即可:
_odb_ '_exec_' $sql
如果需要执行有返回值的操作,如需获取数据,则执行以下代码即可:
_odb_ '_get_' $sql
返回值为dataset对象
- powershell数据库操作函数
- powershell数据库操作函数
- PowerShell 连接 SQL SERVER 数据库进行操作
- PowerShell操作活动目录
- 使用PowerShell操作快捷方式
- PowerShell 操作bcs
- PowerShell 之文本操作
- PowerShell批量操作
- PowerShell 操作 xml
- Powershell 操作SQL Server
- PowerShell 查询操作
- Powershell连接操作SQLSERVER
- Powershell 条件操作符
- PowerShell-6.文件操作
- PowerShell基本操作
- Powershell 操作SQL Server
- Powershell 访问Sql数据库
- SharePoint 数据库管理-PowerShell
- js—当浏览器窗口大小改变时事件
- 如何创建OpenCart主题/模板
- 安卓Apk加载lua文件
- UML概述
- 获取mp4文件的帧率fps
- powershell数据库操作函数
- InnoSetup 5 脚本
- Linux时间函数之gettimeofday()函数之使用方法
- 对称算法,摘要算法,公钥算法
- 问答解题:为什么打开网页的时候图片和文字比较模糊【rmzt】
- 【rmzt】问题解答:装了Office2010怎么会多一个Q盘?
- 软件开发文档编写
- 转载:开源专访】Sea.js创始人玉伯的前端开发之路
- 信号