0

这里我们需要将qracle数据库迁移到sql server。这里我们使用 c#.net 应用程序。

下面给出了 Oracle 的示例代码。

这里我们使用的是 OracleType.Cursor,那么 sqldbtype 中的等号是什么

public DataSet GetL3CompanyDesc()
{
    DataSet dsCompanyDetails = new DataSet();
    try
    {
        oracleConnection = new OracleConnection(connectionString);
        OracleParameter[] arrayParameter = new OracleParameter[2];
        arrayParameter[0] = new OracleParameter(IODDALConstants.GetL3CompanyDescRefCur, OracleType.Cursor);
        arrayParameter[0].Direction = ParameterDirection.Output;
        arrayParameter[1] = new OracleParameter(IODDALConstants.GetL3CompanyDescCubeVersion, OracleType.Cursor);
        arrayParameter[1].Direction = ParameterDirection.Output;
        OracleHelper.FillDataset(oracleConnection, CommandType.StoredProcedure, IODDALConstants.GetL3CompanyDesc, dsCompanyDetails, new string[] { IODDALConstants.GetL3CompanyDescTableName }, arrayParameter);
    }
    catch (Exception ex)
    {
        bool rethrow = ExceptionLogEntry.HandleDALException(ex);
        if (rethrow)
        {
            throw;
        }
    }
    finally
    {
        if (oracleConnection != null)
            oracleConnection.Dispose();
    }
    return dsCompanyDetails;
}

在 Oracle 存储过程中,它们将游标作为参数传递。是否有可能将游标作为 SQL 中的参数传递。以及如何将游标作为输出参数从 c# 代码传递给 sql 存储过程?

有人可以帮我解决这个问题吗?

4

1 回答 1

0

您不能将 CURSOR 作为 T-SQL 中的 SP 参数传递。使用此MSDN 示例中所示的 Table-Values 参数。

于 2012-08-22T07:46:20.190 回答