---
title: "MySQL: Förhindra dubbelbokningar."
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/179240-mysql-förhindra-dubbelbokningar"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "thevice"
published: "2009-07-02T22:01:18.000Z"
updated: "2009-07-04T20:30:24.000Z"
replies: 3
views: 543
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/179240-mysql-förhindra-dubbelbokningar"
---

# MySQL: Förhindra dubbelbokningar.

## #1 — thevice, 2009-07-02T22:01Z

Hejsan,
Sitter och jobbar med ett boknings system och jag vill förhindra att en viss produkt blir bokad under samma tid som den redan har blivit bokad.

När man bokar en produkt så kan man skriva in när produkten hämtas och lämnas jag vill sedan kolla om det finns några bokningar i databasen under den tiden som man har valt. Mitt tappra försök var:
SELECT produktID FROM bokningar WHERE produktHamtas \>= in_produktHamtas AND produktLamnas \<= in_produktLamnas;

in_produktHamtas och in_produktLamnas är värderna som jag skickar medi min procedure.
Detta fungera inprincip enbart när produktHamtas har samma värde som in_produktHamtas och produktLamnas har samma värde som in_produktLamnas.

Har ni några förslag på hur jag ska lösa detta?
Tack på förhand

Permalänk: https://www.webforum.nu/p/179240

## #2 — Lukaspojken, 2009-07-03T07:42Z

Borde du inte kunna göra så här:
SELECT produktID FROM bokningar WHERE produktHamtas = in_produktHamtas AND produktLamnas = in_produktLamnas;

Permalänk: https://www.webforum.nu/p/2192067

## #3 — thevice, 2009-07-03T19:01Z

Det var också min tanke men då skulle det ju bokningen gå igenom om en produkt från första början var bokad 1 jan - 5 jan och en bokar produkten från 2 jan - 4-jan.
Det jag skulle kunna göra är att lägga till "AND produktHamtas = datum" för varje datum fram tills den lämnas men det skulle bli en väldigt lång SQL sats.

Permalänk: https://www.webforum.nu/p/2192097

## #4 — thevice, 2009-07-04T20:30Z

Jag tror att jag löste (har testat en massa olika datum) det med hjälp av "BETWEEN".

Permalänk: https://www.webforum.nu/p/2192160

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/179240-mysql-förhindra-dubbelbokningar
