Ich frage mich, wie man Ergebnisse aus einer gespeicherten Prozedur in R. holen würde ich zur Zeit RStudio mit dem RODBC Paket mit undFetching Ergebnisse von Stored Procedure R
sqlQuery(conn, 'exec sp_name vars')
als meine Abfrage verwenden. Die gespeicherte Prozedur soll eine Ganzzahl zurückgeben, die die neue Zeilennummer darstellt, auf der die Daten generiert werden. Wie würde ich darüber gehen? Im Moment bekomme ich -2
oder character(0)
zurück auf meine Ausführungen.
Nur versuchen, eine Nummer zurückgeben und speichern Sie es R-Seite.
Stored Procedure
USE [Internship]
GO
/****** Object: StoredProcedure [dbo].[pCreateKMeanTest] Script Date: 7/20/2017 12:51:28 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[pCreateKMeanTest]
(@DataSetName varchar(255)
,@SQLStatement varchar(5000)
,@ColumnUsed varchar(2900)
,@TotClusters int)
as
/*
exec pCreateKMeanTest
@DataSetName = '[dbo].[vAccountMemberProductDetailWithBehavior]'
,@SQLStatement = 'select [demo_age], Profit_PnlAmt, Census_HomeNearestBranchDistance from [dbo].[vAccountMemberProductDetailWithBehavior]'
,@ColumnUsed = 3
,@TotClusters = 5
*/
begin transaction
insert into dbo.KMean
(ExecutedDateTime
,DataSetName
,SQLStatement
,ColumnUsed
,TotClusters)
select
getdate()
,@DataSetName
,@SQLStatement
,@ColumnUsed
,@TotClusters
select max(TestID) from dbo.KMean (nolock)
commit transaction
GO
Können wir Ihre gespeicherte Prozedur sehen? Ist es eine benutzerdefinierte sp oder eine eingebaute sp 'name? Es kann zu Sicherheitsproblemen kommen, wenn Systemprozeduren über odbc ausgeführt werden. – Parfait
@Parfait Das ist der Code der gespeicherten Prozedur. – Jon
Versuchen Sie 'SET NOCOUNT ON' innerhalb von gespeicherten Proc hinzuzufügen und verschieben Sie die letzte 'SELECT max (...)' Abfrage außerhalb der Transaktion. – Parfait