Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.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 Server的C Windows窗体应用程序中,在到期日前30天发出警报_C#_Sql Server - Fatal编程技术网

C# 在使用SQL Server的C Windows窗体应用程序中,在到期日前30天发出警报

C# 在使用SQL Server的C Windows窗体应用程序中,在到期日前30天发出警报,c#,sql-server,C#,Sql Server,我正在从事一个C Windows窗体项目,其中有一个窗体具有以下字段 Item_ID, Item_Manufacture_Date, Item_Expiry_Date, Price 我正在将其保存到具有以下列的SQL Server表项中: CREATE TABLE [dbo].[Medicine] ( [Item_Code] [nvarchar](50) NULL, [Item_Manufacture_Date] [date] NULL, [Item_Expiry_Da

我正在从事一个C Windows窗体项目,其中有一个窗体具有以下字段

Item_ID, Item_Manufacture_Date, Item_Expiry_Date, Price
我正在将其保存到具有以下列的SQL Server表项中:

CREATE TABLE [dbo].[Medicine]
(
    [Item_Code] [nvarchar](50) NULL,
    [Item_Manufacture_Date] [date] NULL,
    [Item_Expiry_Date] [date] NULL,
    [Price] [nvarchar](50) NULL
) ON [PRIMARY]
它现在正在正确保存,我将分别在datagridview中显示所有这些内容,如下所示

con.Open();

SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = " Select * from Medicine";

cmd.ExecuteNonQuery();

DataTable dt = new DataTable();

SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);

dataGridView1.DataSource = dt;
con.Close();
我想在到期日前30天或前几天显示项目。通过与当前日期进行比较

例如,我想在2018年1月17日展示那些将于2018年2月17日或之前到期的项目。因为我尝试了这个查询,我知道这个查询是错误的,请纠正我,这样我就可以看到那些将在未来30天到期的项目

select 
    Item_Code, ExpiryDate 
from 
    Medicine 
where 
    Date <= GETDATE() - interval 30 day
请帮助,谢谢大家。

您可以使用DATEADD

看起来像

SELECT Item_Code, ExpiryDate FROM Medicine WHERE ExpiryDate BETWEEN DATEADD(DAY,-30,GETDATE()) and GETDATE()

请尝试以下操作:var results=dt.AsEnumerable.Wherex=>x.FieldItem\u Expiray\u Datenew{Date=x.FieldItem,text=x.FieldItem\u Code,man\u Date=x.FieldItem\u Expiray\u Date,price=x.FieldPrice}.ToList;这是我正在寻找的答案,它对我很有效。谢谢。非常感谢你