【问题标题】:DATAADAPTERS AND NULLS数据适配器和空值
【发布时间】:2013-09-23 00:00:41
【问题描述】:

我正在尝试将 null 传递给 DataAdapter.Fill。我的 SQL 语句接受空值,但我得到一个返回空值是不可接受的。

JUEGO.etreDataSetTableAdapters.CountyTableAdapter etreDataSetCountyTableAdapter = new          JUEGO.etreDataSetTableAdapters.CountyTableAdapter();
        etreDataSetCountyTableAdapter.Fill(etreDataSet.County, null);
        CollectionViewSource CViewSource = ((CollectionViewSource)(this.FindResource("CViewSource")));
        CViewSource.View.MoveCurrentToFirst();

CountryTableAdapter 后面有下面的 SQL 语句。

SELECT DISTINCT CCODE FROM  HH_Match WHERE  (@DCODE IS NULL OR DCODE = @DCODE)

但是当我像上面那样传递 Null 时,它会返回一个不允许使用空值的消息。我在 Visual Studio (C#) 2012 中工作。在此先感谢您的帮助

【问题讨论】:

    标签: c# sql null sqldataadapter


    【解决方案1】:

    您必须手动配置 TableAdapter 以便它接受 null。

    因此单击查询属性中的Parameters。选择您想要制作的可选参数(在这种情况下,您只有一个参数)。在右侧,您会找到AllowDbNull。将此设置为True,您就到了。

    【讨论】:

    • 我在哪里可以找到 VS 2012 中的 GUI
    • @DeoMutyaba:但是你已经创建了你的打字DataSet,不是吗?单击xsd 文件,您将进入设计器。然后搜索名称为CountyTableAdapterTableAdapter。在它下方,您可以找到查询,默认情况下为 FillGetData。右键单击它并选择属性。在那里您可以找到参数。单击它查看上面的 gui(可能是英文)。请注意,我有 VS 2010,但我怀疑是否有任何改变。
    • @DeoMutyaba:不客气。记得勾选左侧的接受按钮 :)
    猜你喜欢
    • 2021-06-19
    • 2014-02-05
    • 1970-01-01
    • 2011-05-14
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多