SQL参数整数值或dbnull传递给查询

用户名

无法使我的查询正常工作。我想将整数值或dbnull传递给我的查询,但是这种形式不起作用。在我的代码下面。

询问:

Using cmd As New SqlCommand("SELECT COUNT(*) FROM tbSuSubSections_Sentences WHERE FK_Sentence_Id = @FK_Sentence_Id And FK_SubSection_Id = @FK_SubSection_Id And FK_SubSubKategorie_Id=@FK_SubSubKategorie_Id", con)

根据我需要的参数设置:

If _FK_SubSubKategorie_Id = 0 Then
                    cmd.Parameters.AddWithValue("@FK_SubSubKategorie_Id", DBNull.Value)
                Else
                    cmd.Parameters.AddWithValue("@FK_SubSubKategorie_Id", _FK_SubSubKategorie_Id)
                End If

如果_FK_SubSubKategorie_Id设置DBNull为如图所示,我的查询应该更改一下,而不是这部分:

And FK_SubSubKategorie_Id=@FK_SubSubKategorie_Id", con)

And FK_SubSubKategorie_Id IS NULL", con)

正确的做法是什么?

这就是整个SQL函数:

#Region "Check if connection already exist"
    Public Function CheckIfConnectionAlreadyExist(_FK_Sentence_Id As Integer, _FK_SubSection_Id As Integer, _FK_SubSubKategorie_Id As Integer) As Boolean
        Dim result As Boolean
        Dim strcon = New AppSettingsReader().GetValue("ConnectionString", GetType(String)).ToString()
        Using con As New SqlConnection(strcon)
            Using cmd As New SqlCommand("SELECT COUNT(*) FROM tbSuSubSections_Sentences WHERE FK_Sentence_Id = @FK_Sentence_Id And FK_SubSection_Id = @FK_SubSection_Id And FK_SubSubKategorie_Id=@FK_SubSubKategorie_Id", con)
                cmd.CommandType = CommandType.Text

                cmd.Parameters.AddWithValue("@FK_Sentence_Id", _FK_Sentence_Id)
                cmd.Parameters.AddWithValue("@FK_SubSection_Id", _FK_SubSection_Id)
                If _FK_SubSubKategorie_Id = 0 Then
                    cmd.Parameters.AddWithValue("@FK_SubSubKategorie_Id", DBNull.Value)
                Else
                    cmd.Parameters.AddWithValue("@FK_SubSubKategorie_Id", _FK_SubSubKategorie_Id)
                End If
                con.Open()
                Dim o As Integer = cmd.ExecuteScalar()
                If o > 0 Then
                    result = True
                Else
                    result = False
                End If
                con.Close()
            End Using
        End Using
        Return result
    End Function
#End Region
亚历克斯·B。

只需创建两个条件都相同的查询字符串,然后再进行更改即可_FK_SubSubKategorie_Id然后创建命令:

Dim qry as String = "SELECT COUNT(*) FROM tbSuSubSections_Sentences WHERE FK_Sentence_Id = @FK_Sentence_Id And FK_SubSection_Id = @FK_SubSection_Id And FK_SubSubKategorie_Id {0}"

If _FK_SubSubKategorie_Id = 0 Then
  qry = string.Format(qry," IS NULL")
Else
  qry = string.Format(qry, "=@FK_SubSubKategorie_Id"
End if

Using cmd As New SqlCommand(qry, con)
  ...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SSRS:是否可以将参数值传递给SQL查询中的“ Values”关键字?

来自分类Dev

如何将整数值传递给命令参数MultiBinding

来自分类Dev

如何在VBA中将整数值传递到SQL查询

来自分类Dev

将参数传递给整数?

来自分类Dev

Mule Sql查询-将参数传递给IN运算符

来自分类Dev

将参数列表作为输入传递给SQL查询

来自分类Dev

如何将参数传递给Microsoft SQL Server查询?

来自分类Dev

将List <int>作为查询参数传递给SQL Server

来自分类Dev

在Rails中将日期范围参数传递给SQL / ActiveRecord查询

来自分类Dev

Mule Sql查询-将参数传递给IN运算符

来自分类Dev

将参数列表作为输入传递给SQL查询

来自分类Dev

将List <int>作为查询参数传递给SQL Server

来自分类Dev

在Rails中将日期范围参数传递给SQL / ActiveRecord查询

来自分类Dev

提取传递给函数参数的函数的参数值

来自分类Dev

类别参数传递整数值的Cloud ML超参数调整

来自分类Dev

如何将枚举参数值传递给RESTful服务

来自分类Dev

Java:如何限制可以传递给方法的参数值

来自分类Dev

Swift:将参数值传递给Selector函数

来自分类Dev

将函数参数值传递给该函数内部的函数

来自分类Dev

将参数值传递给可观察对象

来自分类Dev

如何获取参数值并将其传递给存储过程?

来自分类Dev

Swift:将参数值传递给Selector函数

来自分类Dev

以随机顺序将参数值传递给函数或过程

来自分类Dev

传递给C ++中的函数时混淆了参数值

来自分类Dev

将附加参数传递给Mongoose查询

来自分类Dev

将参数传递给$ resource查询或获取

来自分类Dev

mysql将参数传递给子查询

来自分类Dev

将参数传递给SQLSRV WHERE IN查询

来自分类Dev

传递给查询时参数更改?

Related 相关文章

热门标签

归档