我想創建一個SQL查詢,以便當用戶輸入開始日期,結束日期,並從下拉列表中選擇一個大小是連接到我的數據庫,結果顯示單擊按鈕時所選日期的可用連衣裙。預訂系統SQL查詢:使用開始和結束日期和大小可用的數據庫搜索
這是我的模式。
Product (Product_ID, Size, Image, Description)
Booking (Booking_ID, Product_ID, Start_Date, End_Date)
這是我試過的第一個查詢。
SELECT Product_ID FROM Product P
WHERE Size = 'DropDownList1.SelectedValue' AND NOT EXISTS
(SELECT * FROM Booking
WHERE Product_ID = P.Product_ID AND Start_Date >= 'Start' AND End_Date <= 'End')
我還沒有VB代碼,因爲我不太確定把它放在哪裏或寫什麼。當我嘗試測試查詢時,它說日期的轉換失敗。
另外,我應該在搜索按鈕中放入什麼代碼才能讓它在列表視圖中顯示結果?
這是我正在使用的jQuery。
<script>
$(function() {
$("#Start").datepicker({
dateFormat: 'dd/mm/yy',
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 1,
onClose: function (selectedDate) {
$("#End").datepicker("option", "minDate", selectedDate);
}
});
$("#End").datepicker({
dateFormat: 'dd/mm/yy',
defaultDate: "+1w",
changeMonth: true,
numberOfMonths: 1,
onClose: function (selectedDate) {
$("#Start").datepicker("option", "maxDate", selectedDate);
}
});
});
而這是用戶進入使用jQuery日期選擇器的日期。
Date Needed: <input type="text" id="Start">
Return Date: <input type="text" id="End">
我嘗試了幾個不同的東西,它仍然無法正常工作。我已經添加了一些VB,看起來像這樣。但我不認爲這是正確的。開始和結束在他們下面有藍線。它開始說它「沒有被宣佈」,並且結束它說「預期的表達」。
Partial Class Pages_Default
Inherits System.Web.UI.Page
Protected Sub btnSearch_Click(sender As Object, e As EventArgs) Handles btnSearch.Click
Dim conn As SqlConnection
Dim cmd As SqlCommand
Dim recordsAffected As Integer
Dim cmdstring As String = "SELECT Booking(Start_Date, End_Date) Values(@Start, @End)"
conn = New SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename=F:\BBB.mdf;Integrated Security=True")
cmd = New SqlCommand(cmdstring, conn)
cmd.Parameters.Add("@Start", SqlDbType.Date).Value = Start.SelectedValue
cmd.Parameters.Add("@End", SqlDbType.Date).Value = End.SelectedValue
conn.Open()
recordsAffected = cmd.ExecuteNonQuery
conn.Close()
End Sub
End Class
我也改變了這個SQL查詢,它不工作。
SELECT Image, Price, Description FROM Product P WHERE Size = 'DropDownList1.SelectedValue' AND NOT EXISTS (SELECT * FROM Booking WHERE Product_ID = P.Product_ID AND Start_Date >= @Start AND End_Date <= @End)
你可以顯示'開始'和'結束'? – User2012384
「開始」和「結束」不是日期。 –
是的,但用戶將從日期選擇器中選擇日期。只是不知道我需要放在那裏才能使其工作。 – ConfusedStudent