{"id":334,"date":"2015-12-05T10:43:00","date_gmt":"2015-12-05T03:43:00","guid":{"rendered":"https:\/\/web.archive.org\/web\/20230708091538\/http:\/\/www.sqlitetutorial.net\/?page_id=334"},"modified":"2022-04-03T15:03:48","modified_gmt":"2022-04-03T08:03:48","slug":"sqlite-data-types","status":"publish","type":"page","link":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/","title":{"rendered":"SQLite Data Types"},"content":{"rendered":"\r\n<p><strong>Summary<\/strong>: in this tutorial, you will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">Introduction to SQLite data types<\/h2>\r\n\r\n\r\n\r\n<p>If you come from other database systems such as <a href=\"http:\/\/www.mysqltutorial.org\/mysql-data-types.aspx\">MySQL<\/a>&nbsp;and <a href=\"http:\/\/www.postgresqltutorial.com\/postgresql-data-types\/\">PostgreSQL<\/a>, you notice that they use <em>static typing<\/em>. It means when you declare a column with a specific data type, that column can store only data of the declared data type.<\/p>\r\n\r\n\r\n\r\n<p>Different from other database systems, SQLite uses <em>dynamic type system<\/em>. In other words, a value stored in a column determines its data type, not the column&#8217;s data type.<\/p>\r\n\r\n\r\n\r\n<p>In addition, you don&#8217;t have to declare a specific data type for a column when you create a table. In case you declare a column with the integer data type, you can store any kind of data types such as text and BLOB, SQLite will not complain about this.<\/p>\r\n\r\n\r\n\r\n<p>SQLite provides five primitive data types which are referred to as <em>storage classes. <\/em><\/p>\r\n\r\n\r\n\r\n<p>Storage classes describe the formats that SQLite uses to store data on disk. A storage class is more general than a data type e.g., <code>INTEGER<\/code> storage class includes 6 different types of integers. In most cases, you can use storage classes and data types interchangeably.<\/p>\r\n\r\n\r\n\r\n<p>The following table illustrates 5 storage classes in SQLite:<\/p>\r\n\r\n\r\n\r\n<figure class=\"wp-block-table table table-borederd\"><table class=\"\"><tbody><tr><th>Storage Class<\/th><th>Meaning<\/th><\/tr><tr><td>NULL<\/td><td>NULL values mean missing information or unknown.<\/td><\/tr><tr><td>INTEGER<\/td><td>Integer values are whole numbers (either positive or negative). An integer can have variable sizes such as 1, 2,3, 4, or 8 bytes.<\/td><\/tr><tr><td>REAL<\/td><td>Real values are real numbers with decimal values that use 8-byte floats.<\/td><\/tr><tr><td>TEXT<\/td><td>TEXT is used to store character data. The maximum length of TEXT is unlimited. SQLite supports various character encodings.<\/td><\/tr><tr><td>BLOB<\/td><td>BLOB stands for a binary large object that can store any kind of data. The maximum size of BLOB is, theoretically, unlimited.<\/td><\/tr><\/tbody><\/table><\/figure>\r\n\r\n\r\n\r\n<p>SQLite determines the data type of a value based on its data type according to the following rules:<\/p>\r\n\r\n\r\n\r\n<ul><li>If a literal has no enclosing quotes and decimal point or exponent, SQLite assigns the INTEGER storage class.<\/li><li>If a literal is enclosed by single or double quotes, SQLite assigns the TEXT storage class.<\/li><li>If a literal does not have quote nor decimal point nor exponent, SQLite assigns REAL storage class.<\/li><li>If a literal is NULL without quotes, it assigned NULL storage class.<\/li><li>If a literal has the X&#8217;ABCD&#8217; or x &#8216;abcd&#8217;, SQLite assigned BLOB storage class.<\/li><\/ul>\r\n\r\n\r\n\r\n<p class=\"note\">SQLite does not support built-in date and time storage classes. However, you can use the TEXT, INT, or REAL to store date and time values. For the detailed information on how to handle date and time values, check it out the <a href=\"https:\/\/www.sqlitetutorial.net\/sqlite-date\/\">SQLite date and time tutorial<\/a>.<\/p>\r\n\r\n\r\n\r\n<p>SQLites provides the <code>typeof()<\/code> function that allows you to check the storage class of a value based on its format. See the following example:<\/p>\r\n\r\n\r\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">SELECT<\/span>\r\n\ttypeof(<span class=\"hljs-number\">100<\/span>),\r\n\ttypeof(<span class=\"hljs-number\">10.0<\/span>),\r\n\ttypeof(<span class=\"hljs-string\">'100'<\/span>),\r\n\ttypeof(x<span class=\"hljs-string\">'1000'<\/span>),\r\n\ttypeof(<span class=\"hljs-literal\">NULL<\/span>);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" loading=\"lazy\" width=\"504\" height=\"44\" src=\"https:\/\/www.sqlitetutorial.net\/wp-content\/uploads\/2015\/12\/SQLite-Data-Types-typeof-function.jpg\" alt=\"SQLite Data Types - typeof function\" class=\"wp-image-335\" srcset=\"https:\/\/www.sqlitetutorial.net\/wp-content\/uploads\/2015\/12\/SQLite-Data-Types-typeof-function.jpg 504w, https:\/\/www.sqlitetutorial.net\/wp-content\/uploads\/2015\/12\/SQLite-Data-Types-typeof-function-300x26.jpg 300w\" sizes=\"(max-width: 504px) 100vw, 504px\" \/><\/figure>\r\n\r\n\r\n\r\n<p>A single column in SQLite can store mixed data types. See the following example.<\/p>\r\n\r\n\r\n\r\n<p>First, <a href=\"https:\/\/www.sqlitetutorial.net\/sqlite-create-table\/\">create a new table<\/a> named <code>test_datatypes<\/code> for testing.<\/p>\r\n\r\n\r\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">CREATE<\/span> <span class=\"hljs-keyword\">TABLE<\/span> test_datatypes (\r\n\t<span class=\"hljs-keyword\">id<\/span> <span class=\"hljs-built_in\">INTEGER<\/span> PRIMARY <span class=\"hljs-keyword\">KEY<\/span>,\r\n\tval\r\n);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\r\n\r\n\r\n<p>Second, <a href=\"https:\/\/www.sqlitetutorial.net\/sqlite-insert\/\">insert<\/a> data into the <code>test_datatypes<\/code> table.<\/p>\r\n\r\n\r\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">INSERT<\/span> <span class=\"hljs-keyword\">INTO<\/span> test_datatypes (val)\r\n<span class=\"hljs-keyword\">VALUES<\/span>\r\n\t(<span class=\"hljs-number\">1<\/span>),\r\n\t(<span class=\"hljs-number\">2<\/span>),\r\n\t(<span class=\"hljs-number\">10.1<\/span>),\r\n\t(<span class=\"hljs-number\">20.5<\/span>),\r\n\t(<span class=\"hljs-string\">'A'<\/span>),\r\n\t(<span class=\"hljs-string\">'B'<\/span>),\r\n\t(<span class=\"hljs-literal\">NULL<\/span>),\r\n\t(x<span class=\"hljs-string\">'0010'<\/span>),\r\n\t(x<span class=\"hljs-string\">'0011'<\/span>);<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\r\n\r\n\r\n<p>Third, use the <code>typeof()<\/code> function to get the data type of each value stored in the <code>val<\/code> column.<\/p>\r\n\r\n\r\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">SELECT<\/span>\r\n\t<span class=\"hljs-keyword\">id<\/span>,\r\n\tval,\r\n\ttypeof(val)\r\n<span class=\"hljs-keyword\">FROM<\/span>\r\n\ttest_datatypes;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" loading=\"lazy\" width=\"188\" height=\"202\" src=\"https:\/\/www.sqlitetutorial.net\/wp-content\/uploads\/2015\/12\/SQLite-Data-Types-mixed-data-types-in-a-column.jpg\" alt=\"SQLite Data Types - mixed data types in a column\" class=\"wp-image-336\"\/><\/figure>\r\n\r\n\r\n\r\n<p>You may ask how SQLite <a href=\"https:\/\/www.sqlitetutorial.net\/sqlite-order-by\/\">sorts <\/a>data in a column with different storage classes like val column above.<\/p>\r\n\r\n\r\n\r\n<p>To resolve this, SQLite provides the following set of rules when it comes to sorting:<\/p>\r\n\r\n\r\n\r\n<ul><li>NULL storage class has the lowest value. It is lower than any other values. Between NULL values, there is no order.<\/li><li>The next higher storage classes are INTEGER and REAL. SQLite compares INTEGER and REAL numerically.<\/li><li>The next higher storage class is TEXT. SQLite uses the collation of TEXT values when it compares the TEXT values.<\/li><li>The highest storage class is the BLOB. SQLite uses the C function <code>memcmp()<\/code> to compare BLOB values.<\/li><\/ul>\r\n\r\n\r\n\r\n<p>When you use the <code><a href=\"https:\/\/www.sqlitetutorial.net\/sqlite-order-by\/\">ORDER BY<\/a><\/code>&nbsp;clause to sort the data in a column with different storage classes, SQLite performs the following steps:<\/p>\r\n\r\n\r\n\r\n<ul><li>First, group values based on storage class: NULL, INTEGER, and REAL, TEXT, and BLOB.<\/li><li>Second, sort the values in each group.<\/li><\/ul>\r\n\r\n\r\n\r\n<p>The following statement sorts the mixed data in the <code>val<\/code> column of the <code>test_datatypes<\/code> table:<\/p>\r\n\r\n\r\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"SQL (Structured Query Language)\" data-shcb-language-slug=\"sql\"><span><code class=\"hljs language-sql\"><span class=\"hljs-keyword\">SELECT<\/span>\r\n\t<span class=\"hljs-keyword\">id<\/span>,\r\n\tval,\r\n\ttypeof(val)\r\n<span class=\"hljs-keyword\">FROM<\/span>\r\n\ttest_datatypes\r\n<span class=\"hljs-keyword\">ORDER<\/span> <span class=\"hljs-keyword\">BY<\/span> val;<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">SQL (Structured Query Language)<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">sql<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\r\n\r\n\r\n<figure class=\"wp-block-image\"><img decoding=\"async\" loading=\"lazy\" width=\"188\" height=\"199\" src=\"https:\/\/www.sqlitetutorial.net\/wp-content\/uploads\/2015\/12\/SQLite-Data-Types-and-ORDER-BY-clause.jpg\" alt=\"SQLite Data Types and ORDER BY clause\" class=\"wp-image-337\"\/><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\">SQLite manifest typing &amp; type affinity<\/h2>\r\n\r\n\r\n\r\n<p>Other important concepts related to SQLite data types are manifest typing and type affinity:<\/p>\r\n\r\n\r\n\r\n<ul><li>Manifest typing means that a data type is a property of a value stored in a column, not the property of the column in which the value is stored. SQLite uses manifest typing to store values of any type in a column.<\/li><li>Type affinity of a column is the recommended type for data stored in that column. Note that the data type is recommended, not required, therefore, a column can store any type of data.<\/li><\/ul>\r\n\r\n\r\n\r\n<p>In this tutorial, you have learned about SQLite data types and some important concepts including storage classes, manifest typing, and type affinity.<\/p>\r\n<div class=\"helpful-block-content\" data-title=\"\">\n\t<header>\n\t\t<div class=\"wth-question\">Was this tutorial helpful ?<\/div>\n\t\t<div class=\"wth-thumbs\">\n\t\t\t<button\n\t\t\t\tdata-post=\"334\"\n\t\t\t\tdata-post-url=\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/\"\n\t\t\t\tdata-post-title=\"SQLite Data Types\"\n\t\t\t\tdata-response=\"1\"\n\t\t\t\tclass=\"wth-btn-rounded wth-yes-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t\tclass=\"feather feather-thumbs-up block w-full h-full\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> Yes <\/span>\n\t\t\t<\/button>\n\n\t\t\t<button\n\t\t\t\tdata-response=\"0\"\n\t\t\t\tdata-post=\"334\"\n\t\t\t\tdata-post-url=\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/\"\n\t\t\t\tdata-post-title=\"SQLite Data Types\"\n\t\t\t\tclass=\"wth-btn-rounded wth-no-btn\"\n\t\t\t>\n\t\t\t\t<svg\n\t\t\t\t\txmlns=\"http:\/\/www.w3.org\/2000\/svg\"\n\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\tfill=\"none\"\n\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\tstroke-linejoin=\"round\"\n\t\t\t\t>\n\t\t\t\t\t<path\n\t\t\t\t\t\td=\"M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17\"\n\t\t\t\t\t><\/path>\n\t\t\t\t<\/svg>\n\t\t\t\t<span class=\"sr-only\"> No <\/span>\n\t\t\t<\/button>\n\t\t<\/div>\n\t<\/header>\n\n\t<div class=\"wth-form hidden\">\n\t\t<div class=\"wth-form-wrapper\">\n\t\t\t<div class=\"wth-title\"><\/div>\n\t\t\t<textarea class=\"wth-message\"><\/textarea>\n\t\t\t<input type=\"button\" name=\"wth-submit\" class=\"wth-btn wth-btn-submit\" id=\"wth-submit\" \/>\n\t\t\t<input type=\"button\" class=\"wth-btn wth-btn-cancel\" value=\"Cancel\" \/>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summary: in this tutorial, you will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity. Introduction to SQLite data types If you come from other database systems such as MySQL&nbsp;and PostgreSQL, you notice that they use static typing. It means when you declare a column [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":2,"menu_order":34,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SQLite Data Types And Its Important Concepts Explained<\/title>\n<meta name=\"description\" content=\"You will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SQLite Data Types And Its Important Concepts Explained\" \/>\n<meta property=\"og:description\" content=\"You will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/\" \/>\n<meta property=\"og:site_name\" content=\"SQLite Tutorial\" \/>\n<meta property=\"article:modified_time\" content=\"2022-04-03T08:03:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.sqlitetutorial.net\/wp-content\/uploads\/2015\/12\/SQLite-Data-Types-typeof-function.jpg\" \/>\n<meta name=\"twitter:card\" content=\"summary\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/\",\"url\":\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/\",\"name\":\"SQLite Data Types And Its Important Concepts Explained\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqlitetutorial.net\/#website\"},\"datePublished\":\"2015-12-05T03:43:00+00:00\",\"dateModified\":\"2022-04-03T08:03:48+00:00\",\"description\":\"You will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sqlitetutorial.net\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SQLite Tutorial\",\"item\":\"https:\/\/www.sqlitetutorial.net\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"SQLite Data Types\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sqlitetutorial.net\/#website\",\"url\":\"https:\/\/www.sqlitetutorial.net\/\",\"name\":\"SQLite Tutorial\",\"description\":\"A Step-by-step SQLite Tutorial\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sqlitetutorial.net\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SQLite Data Types And Its Important Concepts Explained","description":"You will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/","og_locale":"en_US","og_type":"article","og_title":"SQLite Data Types And Its Important Concepts Explained","og_description":"You will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity.","og_url":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/","og_site_name":"SQLite Tutorial","article_modified_time":"2022-04-03T08:03:48+00:00","og_image":[{"url":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-content\/uploads\/2015\/12\/SQLite-Data-Types-typeof-function.jpg"}],"twitter_card":"summary","twitter_misc":{"Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/","url":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/","name":"SQLite Data Types And Its Important Concepts Explained","isPartOf":{"@id":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/#website"},"datePublished":"2015-12-05T03:43:00+00:00","dateModified":"2022-04-03T08:03:48+00:00","description":"You will learn about SQLite data types system and its related concepts such as storage classes, manifest typing, and type affinity.","breadcrumb":{"@id":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/sqlite-data-types\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/"},{"@type":"ListItem","position":2,"name":"SQLite Tutorial","item":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/"},{"@type":"ListItem","position":3,"name":"SQLite Data Types"}]},{"@type":"WebSite","@id":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/#website","url":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/","name":"SQLite Tutorial","description":"A Step-by-step SQLite Tutorial","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/pages\/334"}],"collection":[{"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/comments?post=334"}],"version-history":[{"count":1,"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/pages\/334\/revisions"}],"predecessor-version":[{"id":2794,"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/pages\/334\/revisions\/2794"}],"up":[{"embeddable":true,"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/pages\/2"}],"wp:attachment":[{"href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/www.sqlitetutorial.net\/wp-json\/wp\/v2\/media?parent=334"}],"curies":[{"name":"wp","href":"https:\/\/web.archive.org\/web\/20230708091538\/https:\/\/api.w.org\/{rel}","templated":true}]}}