Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL错误“参数未指定”添加此Fillby3会导致问题,我对SQL不是很精通。有什么建议吗?_Sql_Vb.net - Fatal编程技术网

SQL错误“参数未指定”添加此Fillby3会导致问题,我对SQL不是很精通。有什么建议吗?

SQL错误“参数未指定”添加此Fillby3会导致问题,我对SQL不是很精通。有什么建议吗?,sql,vb.net,Sql,Vb.net,FillBy3在案例3中引发的错误: 未为“公共可重写重载函数FILLBY3DATABLE as DataSet1.TTIMEDATABLE、tDate as Date?、tDate1 as Date?“as integer”的参数“Date1”指定参数 好吧,SQL在这里并不是一个真正的问题,与这个问题完全无关。只需调用一个包含3个参数的方法,并且只提供了2个参数,这是离题的,但绝对不应该有名为FillBy、FillBy1等的方法。您使用的所有方法都应该有一个描述性名称。使用表适配器的想法是,

FillBy3在案例3中引发的错误:

未为“公共可重写重载函数FILLBY3DATABLE as DataSet1.TTIMEDATABLE、tDate as Date?、tDate1 as Date?“as integer”的参数“Date1”指定参数


好吧,SQL在这里并不是一个真正的问题,与这个问题完全无关。只需调用一个包含3个参数的方法,并且只提供了2个参数,这是离题的,但绝对不应该有名为FillBy、FillBy1等的方法。您使用的所有方法都应该有一个描述性名称。使用表适配器的想法是,当您调用Fill或GetData时,将执行默认查询,即SELECT*而不带WHERE,并且为执行其他查询而添加的任何方法都应该描述这些查询。例如,如果添加一个查询,请从ParentId=?然后将相应的方法命名为FillByParentId和GetDataByParentId。我们应该从它的名字知道这个方法的作用。而且,使用幻数总是不好的。您是一个初学者,所以您不知道是可以理解的,但是类型参数应该是枚举类型,所以每个标签都是自文档化的。在代码中,数字0到3对我们来说毫无意义,如果你把代码放在一边,然后再回来,几个月后对你来说也毫无意义。枚举字段标签和FillByX方法名称都应该对应,例如QueryFilterColumn.ParentId和FillByParentId。感谢Hursey和jm的输入。我知道命名约定的智慧,在vs2015中,在线视频中没有遵循这些约定来生成报告。因此,我的新手没有看到它在这个领域的重要性。再次感谢!!我不得不把这个项目搁置几天,但会让你知道结果。
Public Shared Sub getfilterValues(ByVal Type As Integer, ByVal value As String, ByVal gold As Boolean)
    Try
        Select Case Type

            Case 0
                Form1.tTimeTableAdapter.FillBy(Form1.DataSet1.tTime, value)
            Case 1
                Form1.tTimeTableAdapter.FillBy1(Form1.DataSet1.tTime, value)
            Case 2
                Form1.tTimeTableAdapter.FillBy2(Form1.DataSet1.tTime, value)
            Case 3
                Form1.tTimeTableAdapter.FillBy3(Form1.DataSet1.tTime, value)
        End Select
    Catch ex As Exception
        MsgBox(ex.ToString)
    End Try

    Form1.ReportViewer1.RefreshReport()
End Sub