2009-09-16 23 views
0

我在Powershell中使用Oracle.DataAccess.Client。我需要做的是插入一行新的數據,然後檢索新創建的行的自動生成的ID字段,以用於緊接其後的另一個INSERT命令。做這個的最好方式是什麼?我對SQL和Oracle相當陌生。這裏是我的一些代碼:如何使用Oracle DataAccess和Powershell從INSERT中檢索新行數據?

$conn = "My Connection String" 
$sql = "insert into SCM_APPS.MODULES (PACKAGE_ABBREVIATION, FULL_MODULE_NAME) values ('TES', 'Testing')" 

$command = New-Object Oracle.DataAccess.Client.OracleCommand($sql,$conn) 
$reader = $command.ExecuteReader() 

感謝您的任何幫助,您可以提供!

回答

1
  1. 修改SQL插入查詢如下

$sql = "insert into SCM_APPS.MODULES (PACKAGE_ABBREVIATION, FULL_MODULE_NAME) values ('TES', 'Testing') RETURNING module_id INTO :module_id" 
  • 綁定變量添加到您的OracleCommand名爲 「是模塊」

  • 取其執行命令後的值

  • +1

    Th一百萬! – JimDaniel 2009-09-16 17:34:33

    +0

    不客氣。謝謝你的問題 我在博客上添加了一篇關於這個問題和答案的文章: http://borismod.blogspot.com/2009/09/how-to-retrieve-new-row-data-from。 HTML – 2009-09-30 14:12:59

    相關問題