2010-01-08 1 views
1

Как новичок в MySQL, я хочу получить это право. Мое основное зависание прямо сейчас - тип DECIMAL.Какие типы данных MySQL мне не следует указывать во время INSERT?

Из docs:

По состоянию MySQL 5.0.3, значения для столбцов DECIMAL представлены с использованием двоичного формата , что пакеты девять десятичных (базовой) 10 цифр на четыре байта. Перед MySQL 5.0.3, DECIMAL столбцы представлены в виде строк и хранения требования ...

Таким образом, вопрос, какие типы данных я не должен быть цитирую во время добавления? Я предполагаю, что я не должен использовать кавычки вокруг любых INT, FLOAT, DOUBLE и REAL. Как насчет DECIMAL? Что я забыл?

EDIT:

Я понимаю, MySQL будет «преобразовать в соответствующий тип», но я хочу, чтобы получить правильный ответ независимо. =)

ответ

0

Я понимаю из цитаты, что десятичные значения хранятся на жестком диске в виде четырехбайтовых двоичных значений начиная с 5.0.3, но я ожидаю, что они будут представлены с использованием кавычек для безопасности локали. В нескольких локалях используются разные десятичные «точечные» символы, тысячи разделителей и другие символы, они не могут обрабатываться парсером запросов MySQL, а парсером типа данных, который будет анализировать строки как десятичные. Я ожидаю, что это также применимо ко всем типам с плавающей запятой: float, double и real.

+0

Кроме того, цифры в точности математики (почти) всегда представлены их языковыми символами, чтобы сохранить точность и не путать с ~ 'FLOAT (1.11111)'. –

+0

Вот что я сделал из дальнейшего чтения из немного более старой книги MySQL, которую я получил. Спасибо за помощь! – Jeff

Смежные вопросы