110,534
社区成员
发帖
与我相关
我的任务
分享
--1.2 分店接收配送
IF EXISTS(SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'CK_AllocIn')
DROP TABLE CK_AllocIn
CREATE TABLE dbo.CK_AllocIn(
CK_AllocInID INT IDENTITY NOT NULL PRIMARY KEY NONCLUSTERED,
CK_AllocInDate DATETIME NOT NULL DEFAULT '',
CK_AllocInNo VARCHAR(32) NOT NULL DEFAULT '', --配单号 配送 时间+ From分店/to分店+ 数值序列
CK_InBranchID INT NOT NULL FOREIGN KEY REFERENCES CK_Branch(CK_BranchID) ON UPDATE CASCADE,
CK_AllocInPeople VARCHAR(32) NOT NULL DEFAULT '', ---配送人
CK_Note VARCHAR(64) NOT NULL DEFAULT ''
);
SELECT * FROM dbo.CK_AllocIn
WHERE CK_AllocIn.CK_AllocInDate BETWEEN "2014-4-1" AND "2014-4-30"
<x:FormRow ID="FormRow1" runat="server">
<Items>
<x:DatePicker runat="server" Required="true" Label="日期from" EmptyText="选择起始日期"
ID="DatePicker1" ShowRedStar="True">
</x:DatePicker>
<x:DatePicker runat="server" Required="true" Label="日期to" EmptyText="选择截止日期"
ID="DatePicker2" ShowRedStar="True">
</x:DatePicker>
</Items>
</x:FormRow>
<x:FormRow ID="FormRow2" runat="server">
<Items>
<x:DropDownList runat="server" ID="ddlBranch" Label="配送给*分店" AutoPostBack="true">
</x:DropDownList>
</Items>
</x:FormRow>
private void BindGrid()
{
DataSet ds;
string frtime = ((DateTime)DatePicker1.SelectedDate()).ToString("yyyy-MM-dd");
string totime = ((DateTime)DatePicker2.SelectedDate()).ToString("yyyy-MM-dd");
string tobranch = ddlBranch.SelectedValue;
string strWhere = "";
if (!String.IsNullOrEmpty(frtime) && !String.IsNullOrEmpty(totime))
{
strWhere = "CK_AllocOutDate between" + frtime + "and" + totime + "and" + tobranch;
}
BETWEEN "2014-4-1" AND "2014-4-30"
当然查询不到了 应该是
BETWEEN '2014-04-01' AND '2014-04-30'
当然 可能还是查询不到.因为你没有当前区间的数据 具体格式我忘记了.但是这个地方 你要添加
BETWEEN '2014-04-01 00:00:00 000' AND '2014-04-30 59:59:59 999'
前提是你的UI的格式也是YYYY-MM-DD才可以..
所以你这个DatePicker 我不知道是什么 肯定有属性是yyyy-MM-dd
所以 你后台只需要
string where="xxxtime between '"+xxx1.text+" 00:00:00 000' and '"+xxx2.text+" 59:59:59 999'";
即可..测试下吧
SELECT CONVERT(CHAR(10),CK_AllocIn.CK_AllocInDate,23) as CK_AllocInDate FROM dbo.CK_AllocIn
WHERE CK_AllocInDate > '2014-04-01' and CK_AllocInDate < '2014-04-30'
把后面的时间去掉,另外统一成yyyy-MM-dd格式再去比较。between应该也是可以的
第二个问题,这是aspx代码吗?弄个table布局一下,加一行就加一行呗