(window.webpackJsonp=window.webpackJsonp||[]).push([[222],{789:function(e,t,n){"use strict";n.r(t);var o=n(70),i=Object(o.a)({},(function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[n("h2",{attrs:{id:"data-type"}},[n("a",{staticClass:"header-anchor",attrs:{href:"#data-type"}},[e._v("#")]),e._v(" Data Type")]),e._v(" "),n("p",[e._v("IoTDB supports the following data types:")]),e._v(" "),n("ul",[n("li",[e._v("BOOLEAN (Boolean)")]),e._v(" "),n("li",[e._v("INT32 (Integer)")]),e._v(" "),n("li",[e._v("INT64 (Long Integer)")]),e._v(" "),n("li",[e._v("FLOAT (Single Precision Floating Point)")]),e._v(" "),n("li",[e._v("DOUBLE (Double Precision Floating Point)")]),e._v(" "),n("li",[e._v("TEXT (String)")])]),e._v(" "),n("p",[e._v("The time series of "),n("strong",[e._v("FLOAT")]),e._v(" and "),n("strong",[e._v("DOUBLE")]),e._v(" type can specify (MAX_POINT_NUMBER, see "),n("RouterLink",{attrs:{to:"/UserGuide/V0.12.x/Appendix/SQL-Reference.html"}},[e._v("this page")]),e._v(" for more information on how to specify), which is the number of digits after the decimal point of the floating point number, if the encoding method is "),n("RouterLink",{attrs:{to:"/UserGuide/V0.12.x/Data-Concept/Encoding.html"}},[e._v("RLE")]),e._v(" or "),n("RouterLink",{attrs:{to:"/UserGuide/V0.12.x/Data-Concept/Encoding.html"}},[e._v("TS_2DIFF")]),e._v(". If MAX_POINT_NUMBER is not specified, the system will use "),n("RouterLink",{attrs:{to:"/UserGuide/V0.12.x/Appendix/Config-Manual.html"}},[e._v("float_precision")]),e._v(" in the configuration file "),n("code",[e._v("iotdb-engine.properties")]),e._v(".")],1),e._v(" "),n("ul",[n("li",[e._v("For Float data value, The data range is (-Integer.MAX_VALUE, Integer.MAX_VALUE), rather than Float.MAX_VALUE, and the max_point_number is 19, caused by the limition of function Math.round(float) in Java.")]),e._v(" "),n("li",[e._v("For Double data value, The data range is (-Long.MAX_VALUE, Long.MAX_VALUE), rather than Double.MAX_VALUE, and the max_point_number is 19, caused by the limition of function Math.round(double) in Java (Long.MAX_VALUE=9.22E18).")])]),e._v(" "),n("p",[e._v("When the data type of data input by the user in the system does not correspond to the data type of the time series, the system will report type errors. As shown below, the second-order difference encoding does not support the Boolean type:")]),e._v(" "),n("div",{staticClass:"language- line-numbers-mode"},[n("pre",{pre:!0,attrs:{class:"language-text"}},[n("code",[e._v("IoTDB> create timeseries root.ln.wf02.wt02.status WITH DATATYPE=BOOLEAN, ENCODING=TS_2DIFF\nerror: encoding TS_2DIFF does not support BOOLEAN\n")])]),e._v(" "),n("div",{staticClass:"line-numbers-wrapper"},[n("span",{staticClass:"line-number"},[e._v("1")]),n("br"),n("span",{staticClass:"line-number"},[e._v("2")]),n("br")])])])}),[],!1,null,null,null);t.default=i.exports}}]);