Как я могу установить количество знаков после запятой для атрибута «FLOAT» в запросе SQL «СОЗДАТЬ ТАБЛИЦУ»?

#sql #ms-access

#sql #ms-access

Вопрос:

Я получил этот код прямо сейчас:

 CREATE TABLE DISC_KR4
(KodDysc TEXT (4),
NazvDysc TEXT (80), 
NomTrym INTEGER, 
NomKurs INTEGER, 
ObsDysCred FLOAT);
 

Мне нужно, чтобы ObsDysCred имел только 1 знак после запятой. Как мне установить это в SQL?

Ответ №1:

Лучший способ сделать это — использовать ДЕСЯТИЧНУЮ систему счисления

 ObsDysCred DECIMAL(18, 1)
 

Комментарии:

1. что означает 18?

2. 18 — точность, общее количество цифр, которые могут быть сохранены, как слева, так и справа от десятичной точки 1 — масштаб, максимальное количество цифр, которые могут быть сохранены справа от десятичного разделителя

3. Понял, но когда я пытаюсь написать DECIMAL(18, 1) вместо FLOAT, я получаю синтаксическую ошибку

4. СОЗДАТЬ ТАБЛИЦУ DISC_KR4 (KodDysc ТЕКСТ (4), NazvDysc ТЕКСТ (80), ЦЕЛОЕ ЧИСЛО NomTrym, ЦЕЛОЕ ЧИСЛО NomKurs, ДЕСЯТИЧНОЕ ЧИСЛО ObsDysCred(18,1));

5. Скопировал вставил его. Результат — синтаксическая ошибка. Я работаю в MS Access 2010, возможно, это как-то связано с ошибкой.