2011-11-17 76 views
1

我可以在Powershell中修改新的數據行,但它不會更新站點本身上的Sharepoint列表。從Powershell更新Sharepoint列表

這裏有點我的代碼

在這裏,我填補我的數據集表信息

$connString = 'Provider=Microsoft.ACE.OLEDB.12.0;WSS;IMEX=2;RetrieveIds=Yes;DATABASE=https://sharepoint/;LIST={6d552622-3333-4444-9999-234d32d32d3};' 
$spConn = new-object System.Data.OleDb.OleDbConnection($connString) 
$spConn.open() 
$qry="select * from myList" 
$cmd = new-object System.Data.OleDb.OleDbCommand($qry,$spConn) 
$da = new-object System.Data.OleDb.OleDbDataAdapter($cmd) 
$dataSet = new-object System.Data.DataSet 
$sp = $dataSet.Tables.Add("Table") 
$da.fill($sp) 

這裏我添加了一個新的DataRow

$row = $sp.NewRow() 
$sp.Rows.Add($row) 
$row["Title"] = "Foo" 

在這裏,我嘗試更新Sharepoint List

$da.Update($sp) 

它不會讓我更新,任何幫助或指導都會很棒。

謝謝

回答

1

您正在添加一個新插入行。對於SharePoint列表,OleDB提供程序不支持插入。您可以選擇或更新現有行的值,但不能創建新行。

+1

然後再添加一個新行的方法是什麼? –

+0

我需要做同樣的事情,任何人都知道如何在PowerShell的sharepoint列表中添加一行?我的腳本與SharePoint不在同一系統上運行,因此.Net Sharepoint程序集不可用。 –

+0

上面的代碼將添加一個新的Datarow,但到目前爲止,我無法想出一個方法將其更新到實際的SharePoint列表 - 我覺得必須有一個方法 –