SQL dataset update using PowerShell
hello,
i reading whole dataset sql table:
$query="select * mytable"
$con = new-object system.data.sqlclient.sqlconnection
$con.connectionstring = "server=$svr;database=$dbname;integrated
security=true"
$sqlcmd = new-object system.data.sqlclient.sqlcommand
$sqlcmd.commandtext = $query
$sqlcmd.connection = $con
$sqladapter = new-object system.data.sqlclient.sqldataadapter
$sqladapter.selectcommand = $sqlcmd
$dataset = new-object system.data.dataset
$sqladapter.fill($dataset)
$con.close()
$dataset.tables[0] | format-table -auto
now, make changes in $dataset:
$dataset.tables[1].col[1]=1
$dataset.tables[1].col[2]=2
and put whole $dataset sql table.
how manage it, please?
============
regards r.
here complete , working gui table editor sql tables.
param ( $instance = '.\sqlexpress', $database = 'northwind', $query = 'select * contacts' ) function show-dgvupdatetable{ add-type -assemblyname system.windows.forms [system.windows.forms.application]::enablevisualstyles() $form1 = new-object 'system.windows.forms.form' $datagridview1 = new-object 'system.windows.forms.datagridview' $buttonok = new-object 'system.windows.forms.button' $initialformwindowstate = new-object 'system.windows.forms.formwindowstate' $dgvhaschanged = $false $connstr = "server=$instance;database=$database;integrated security=true" $form1_load = { $conn = new-object system.data.sqlclient.sqlconnection($connstr) $cmd = $conn.createcommand() $cmd.commandtext = $query $script:adapter = new-object system.data.sqlclient.sqldataadapter($cmd) $dt = new-object system.data.datatable $script:adapter.fill($dt) $datagridview1.datasource = $dt $cmdbldr = new-object system.data.sqlclient.sqlcommandbuilder($adapter) } $buttonok_click = { if ($script:dgvhaschanged -and [system.windows.forms.messagebox]::show('do wish save?', 'data changed', 'yesno')) { $script:adapter.update($datagridview1.datasource) } } $datagridview1_currentcelldirtystatechanged = { $script:dgvhaschanged = $true } $form_statecorrection_load ={ $form1.windowstate = $initialformwindowstate } $form1.suspendlayout() # form1 $form1.controls.add($datagridview1) $form1.controls.add($buttonok) $form1.acceptbutton = $buttonok $form1.clientsize = '646, 374' $form1.formborderstyle = 'fixeddialog' $form1.maximizebox = $false $form1.minimizebox = $false $form1.name = 'form1' $form1.startposition = 'centerscreen' $form1.text = 'form' $form1.add_load($form1_load) $datagridview1.columnheadersheightsizemode = 'autosize' $datagridview1.location = '13, 13' $datagridview1.name = 'datagridview1' $datagridview1.size = '621, 309' $datagridview1.tabindex = 1 $datagridview1.add_currentcelldirtystatechanged($datagridview1_currentcelldirtystatechanged) $buttonok.anchor = 'bottom, right' $buttonok.dialogresult = 'ok' $buttonok.location = '559, 339' $buttonok.name = 'buttonok' $buttonok.size = '75, 23' $buttonok.tabindex = 0 $buttonok.text = '&ok' $buttonok.usevisualstylebackcolor = $true $buttonok.add_click($buttonok_click) $form1.resumelayout() $initialformwindowstate = $form1.windowstate $form1.add_load($form_statecorrection_load) $form1.showdialog() } show-dgvupdatetableadd documentation , add gallery.
\_(ツ)_/
Windows Server > Windows PowerShell
Comments
Post a Comment