Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.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
C# SQL函数帮助_C#_Sql_Database_Datagridview - Fatal编程技术网

C# SQL函数帮助

C# SQL函数帮助,c#,sql,database,datagridview,C#,Sql,Database,Datagridview,我正在尝试将datagrid归档到datatable中,以便在归档日期之前在表中找到它。我使用的INSERT SQL语句如下所示: INSERT INTO [VendorArchive] ([Booth], [Deposit], [Rent], [Electric], [Security], [AmountPaid], [DatePaid], [PeriodPaid], [TotalDue], [Notes], [ArchiveDate], [BalanceDue], GETDATE());

我正在尝试将datagrid归档到datatable中,以便在归档日期之前在表中找到它。我使用的INSERT SQL语句如下所示:

INSERT INTO [VendorArchive] ([Booth], [Deposit], [Rent], [Electric], [Security], 
[AmountPaid], [DatePaid], [PeriodPaid], [TotalDue], [Notes], [ArchiveDate], 
[BalanceDue], GETDATE());

SELECT Booth, Deposit, Rent, Electric, Security AmountPaid, DatePaid, PeriodPaid,  
TotalDue, BalanceDue, Notes
FROM Vendors
然后在按钮单击事件中调用代码中的sql函数:

private void vendorArchiveToolStripButton_Click(object sender, EventArgs e)

        {

            if (MessageBox.Show("Are you sure you wish to archive?", "Perform Archive", MessageBoxButtons.YesNo) == DialogResult.Yes)

            {

                vendorArchiveTableAdapter.PerformArchive();

                MessageBox.Show("Archive has completed.");

            }



        }
当我调试并点击存档按钮时,我得到了以下错误:“没有方法'PerformArchive'的重载接受0个参数”

我不明白。我是否使用了错误的SQL语句?我是否需要在方法调用中添加所有列作为argumnets


请提供帮助。

您的SQL查询错误,但您得到的具体错误与SQL查询无关

在项目的某个地方,您有一个名为
PerformArchive
的方法,该方法至少接受一个参数。您需要为该参数提供一个值

假设您使用的是Visual Studio,将光标放在方法名称上,然后按F12键转到定义,然后您可以看到参数是什么


关于SQL,您需要以下内容:

INSERT INTO [VendorArchive] (
    [Booth], [Deposit], [Rent], [Electric], [Security], [AmountPaid], [DatePaid], [PeriodPaid], [TotalDue], [BalanceDue], [Notes], [ArchiveDate]
)
SELECT
    [Booth], [Deposit], [Rent], [Electric], [Security], [AmountPaid], [DatePaid], [PeriodPaid], [TotalDue], [BalanceDue], [Notes], GETDATE()
FROM Vendors
我已修复的错误:

  • 删除了额外的分号
  • Security
    AmountPaid
    之间添加了缺少的逗号
  • 修复了列的顺序,以便它们在INSERT和SELECT语句中匹配
  • 移动GETDATE()以选择列表而不是插入列列表

您的SQL查询是错误的,但您得到的具体错误与您的SQL查询无关

在项目的某个地方,您有一个名为
PerformArchive
的方法,该方法至少接受一个参数。您需要为该参数提供一个值

假设您使用的是Visual Studio,将光标放在方法名称上,然后按F12键转到定义,然后您可以看到参数是什么


关于SQL,您需要以下内容:

INSERT INTO [VendorArchive] (
    [Booth], [Deposit], [Rent], [Electric], [Security], [AmountPaid], [DatePaid], [PeriodPaid], [TotalDue], [BalanceDue], [Notes], [ArchiveDate]
)
SELECT
    [Booth], [Deposit], [Rent], [Electric], [Security], [AmountPaid], [DatePaid], [PeriodPaid], [TotalDue], [BalanceDue], [Notes], GETDATE()
FROM Vendors
我已修复的错误:

  • 删除了额外的分号
  • Security
    AmountPaid
    之间添加了缺少的逗号
  • 修复了列的顺序,以便它们在INSERT和SELECT语句中匹配
  • 移动GETDATE()以选择列表而不是插入列列表

将光标放在
PerformMarchive
上,然后按
F12


查看方法签名,确保它与调用它的位置匹配。

将光标放在
PerformArchive
上,然后按
F12


查看方法签名并确保它与调用它的位置匹配。

如何执行无值插入?右键单击行
vendorArchiveTableAdapter.performachive()中的
performachive
文本位在VisualStudio中单击“转到定义”(或类似的内容)并查看它包含哪些参数expects@Marko伊万诺夫斯基:他试图从一个表中选择值,然后将它们插入另一个表中,并在复制时加上时间戳。马克·拜尔斯是正确的。这正是我想要实现的。我想我困惑的地方是,当我创建一个SQL函数,即PerformArchive时,我能不能像调用任何其他方法那样调用这个函数?因为这就是我要做的。如何进行无值插入?右键单击行
vendorArchiveTableAdapter.performachive()中的
performachive
文本位在VisualStudio中单击“转到定义”(或类似的内容)并查看它包含哪些参数expects@Marko伊万诺夫斯基:他试图从一个表中选择值,然后将它们插入另一个表中,并在复制时加上时间戳。马克·拜尔斯是正确的。这正是我想要实现的。我想我困惑的地方是,当我创建一个SQL函数,即PerformArchive时,我能不能像调用任何其他方法那样调用这个函数?因为这就是我想要做的。