小编Jes*_*ora的帖子

如何从.NET中的存储过程返回oracle输出参数

我在尝试从SP获取数据时遇到严重问题.我试图像这样做:

OracleCommand ora_cmd = new OracleCommand("a6r1.PR_ABC_P_ALTA_TARJETA_PAYWARE", ora_conn);
                    ora_cmd.BindByName = true;
                    ora_cmd.CommandType = CommandType.StoredProcedure;

                    int success= new int();

                    ora_cmd.Parameters.Add("Lc_Param_Issuer", OracleDbType.Varchar2, issuer, ParameterDirection.Input);
                    ora_cmd.Parameters.Add("Ln_Param_Valid_Product", OracleDbType.Varchar2, DropDownListProducto.SelectedValue.ToString(), ParameterDirection.Input);
                    ora_cmd.Parameters.Add("Ln_Param_Total", OracleDbType.Int32, parsed, ParameterDirection.Input);
                    ora_cmd.Parameters.Add("Lc_Param_User", OracleDbType.Varchar2, user, ParameterDirection.Input);
                    ora_cmd.Parameters.Add("Lc_Encrypted_Password", OracleDbType.Varchar2, pass, ParameterDirection.Input);
                    ora_cmd.Parameters.Add("Lc_Exito", OracleDbType.Int32, success, ParameterDirection.Output);
                    ora_cmd.Parameters.Add("Lc_Error", OracleDbType.Varchar2, errorMessage, ParameterDirection.Output);
Run Code Online (Sandbox Code Playgroud)

但它没有向变量sucess或errorMessage返回任何内容.我究竟做错了什么?有没有更好的办法?直接在Oracle上执行它可以正常工作.

.net c# oracle

17
推荐指数
2
解决办法
5万
查看次数

如何在SQL Server中调试合并?

我正在尝试学习如何使用MERGE运算符.以下代码正确编译:

    ALTER PROCEDURE moto.procPM_UpdateLines
@LineId As Int = null,
@LineName As Varchar(100),
@DeleteMe As Bit = 0
    AS
    BEGIN

    MERGE moto.tblPMLine AS line
    USING (SELECT LineId, LineName FROM moto.tblPMLine) AS existsLine
    ON line.LineId = existsLine.LineId
    WHEN MATCHED AND @DeleteMe = 1 THEN DELETE
    WHEN MATCHED AND @DeleteMe = 0 THEN UPDATE SET line.LineName = @LineName
    WHEN NOT MATCHED THEN INSERT(LineName) VALUES(@LineName);
    END
    GO
Run Code Online (Sandbox Code Playgroud)

我知道这是一个非常简单的过程,但由于某种原因,当我使用以下命令时它似乎没有生成任何条目.

    execute moto.procPM_UpdateLines null, 'First test', 0
Run Code Online (Sandbox Code Playgroud)

有没有办法让我知道它遵循哪个选项,如果有的话?


以前的存储过程已修复

   MERGE INTO moto.tblPMLine AS T
   USING (SELECT @LineId …
Run Code Online (Sandbox Code Playgroud)

sql-server

8
推荐指数
1
解决办法
6151
查看次数

验证WPF组合框中的选定值

就像标题所说的那样,我正在尝试验证我的表单,但是我在获取组合框值时遇到了问题:

<ComboBox Name="ComboBox_Country" 
          Validation.Error="Validation_Error"
          Text="{Binding UpdateSourceTrigger=PropertyChanged, 
                         Path=Form_Country,
                         ValidatesOnDataErrors=true,
                         NotifyOnValidationError=true}"/>
Run Code Online (Sandbox Code Playgroud)

然后使用我的类FormValidation进行验证,如下所示:

            public string this[string columnName]
            {
               get
            {
               string result = null;

               if (columnName == "Form_Country")
               {
                  if (string.IsNullOrEmpty(Form_Country) || !verifyNumericValue(Form_Country))
                    result = "Please choose a correct option.";
               }

            }
Run Code Online (Sandbox Code Playgroud)

我使用这些函数在我的表单中调用验证.

    private void Confirm_CanExecute(object sender, CanExecuteRoutedEventArgs e)
    {
        e.CanExecute = _errors == 0;
        e.Handled = true;
    }

    private void Confirm_Executed(object sender, ExecutedRoutedEventArgs e)
    {
        _generic = new UnidadValidation();
        grid_UnidadData.DataContext = _generic;
        e.Handled = true;
    }

    private void Validation_Error(object sender, ValidationErrorEventArgs e) …
Run Code Online (Sandbox Code Playgroud)

c# wpf

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

c# ×2

.net ×1

oracle ×1

sql-server ×1

wpf ×1