{"id":18,"date":"2006-04-11T11:12:33","date_gmt":"2006-04-11T10:12:33","guid":{"rendered":"http:\/\/www.galhano.com\/blog\/?p=18"},"modified":"2006-04-11T11:46:07","modified_gmt":"2006-04-11T10:46:07","slug":"sql-server-2000-data-types","status":"publish","type":"post","link":"https:\/\/galhano.com\/blog\/?p=18","title":{"rendered":"SQL Server 2000 Data Types"},"content":{"rendered":"<p>Built-in data types SQL Server 2000 ships with 27 built-in (system) data types<\/p>\n<table cellspacing=\"1\" border=\"0\">\n<tr>\n<th width=\"114\" bgcolor=\"#000080\"><strong><font size=\"1\" face=\"Verdana\" color=\"#ffffff\">Data Types<\/font><\/strong><font size=\"1\" face=\"Verdana\" color=\"#ffffff\"> <\/font><\/th>\n<th width=\"418\" bgcolor=\"#000080\"><strong><font size=\"1\" face=\"Verdana\" color=\"#ffffff\">Description<\/font><\/strong><font size=\"1\" face=\"Verdana\" color=\"#ffffff\"> <\/font><\/th>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">bigint <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Integer data from -2^63 through 2^63-1 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">int <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Integer data from -2^31 through 2^31 &#8211; 1 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">smallint <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Integer data from -2^15 through 2^15 &#8211; 1 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">tinyint <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Integer data from 0 through 255 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">bit <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Integer data with either a 1 or 0 value <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">decimal <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Fixed precision and scale numeric data from -10^38 +1 through 10^38 -1 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">numeric <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Fixed precision and scale numeric data from -10^38 +1 through 10^38 -1 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">money <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Monetary data values from -2^63 through 2^63 &#8211; 1 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">smallmoney <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Monetary data values from -214,748.3648 through +214,748.3647 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">float <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Floating precision number data from -1.79E + 308 through 1.79E + 308 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">real <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Floating precision number data from -3.40E + 38 through 3.40E + 38 <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">datetime <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Date and time data from January 1, 1753, through December 31, 9999,<\/font><font size=\"1\" face=\"Verdana\">with an accuracy of 3.33 milliseconds <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">smalldatetime <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Date and time data from January 1, 1900, through June 6, 2079,<\/font><font size=\"1\" face=\"Verdana\">with an accuracy of one minute <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">char <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Fixed-length  character data with a maximum length of 8,000 characters <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">varchar <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Variable-length  data with a maximum of 8,000 characters <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">text <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Variable-length  data with a maximum length of 2^31 &#8211; 1 characters <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">nchar <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Fixed-length Unicode data with a maximum length of 4,000 characters <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">nvarchar <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Variable-length Unicode data with a maximum length of 4,000 characters <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">ntext <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Variable-length Unicode data with a maximum length of 2^30 &#8211; 1 characters <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">binary <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Fixed-length binary data with a maximum length of 8,000 bytes <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">varbinary <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">Variable-length binary data with a maximum length of 8,000 bytes <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">image <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">Variable-length binary data with a maximum length of 2^31 &#8211; 1 bytes <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">cursor <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">A reference to a cursor <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">sql_variant <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">A data type that stores values of various data types,<\/font><font size=\"1\" face=\"Verdana\">except text, ntext, timestamp, and sql_variant <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">table <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">A special data type used to store a result set for later processing <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">timestamp <\/font><\/td>\n<td bgcolor=\"#ffffff\"><font size=\"1\" face=\"Verdana\">A database-wide unique number that gets updated every time<\/font><font size=\"1\" face=\"Verdana\">a row gets updated <\/font><\/td>\n<\/tr>\n<tr>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">uniqueidentifier <\/font><\/td>\n<td bgcolor=\"#e9e9e9\"><font size=\"1\" face=\"Verdana\">A globally unique identifier <\/font><\/td>\n<\/tr>\n<\/table>\n<h3><font size=\"2\" face=\"Verdana, Arial, Helvetica, sans-serif\">User-defined  data types<\/font><\/h3>\n<p><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">SQL Server 2000  supports user-defined data types too. User-defined data types provide a  mechanism for applying a name to a data type that is more descriptive of the  types of values to be held in the object. Using user-defined data type can make  it easier for a programmer or database administrator to understand the intended  use of any object defined with the data type. The user-defined data types are  based on the system data types and can be used to predefine several attributes  of a column, such as its data type, length, and whether it supports NULL values.  To create a user-defined data type, you can use the <strong>sp_addtype<\/strong> system  stored procedure or you could add one using the Enterprise Manager. When you  create a user-defined data type, you should specify the following three  properties: <\/font><\/p>\n<ul><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\"> <font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\"><\/p>\n<li>Data type&#8217;s name.<\/li>\n<li>Built-in data type upon which the new data type is based.<\/li>\n<li>Whether it can contain NULL values.<\/li>\n<p><\/font><\/font><\/ul>\n<p><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\"><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">The following  example creates a user-defined data type based on money data type named <strong> cursale<\/strong> that cannot be NULL: <\/font><\/font><\/p>\n<table>\n<tr bgcolor=\"#dcdcdc\">\n<td>\n<pre><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">EXEC sp_addtype cursale, money, 'NOT NULL' GO<\/font><\/pre>\n<\/td>\n<\/tr>\n<\/table>\n<p><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\"><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">Both system and  user-defined data types are used to enforce data integrity. It is very important  that we put forth a lot of effort while designing tables: the better you design  your tables, the more time you can work without any performance problems. In an  ideal case, you never will update the structure of your tables. <\/font><\/font><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Built-in data types SQL Server 2000 ships with 27 built-in (system) data types Data Types Description bigint Integer data from -2^63 through 2^63-1 int Integer data from -2^31 through 2^31 &#8211; 1 smallint Integer data from -2^15 through 2^15 &#8211; 1 tinyint Integer data from 0 through 255 bit Integer data with either a 1 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"close","ping_status":"close","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[],"class_list":["post-18","post","type-post","status-publish","format-standard","hentry","category-sql-server","author-admin"],"_links":{"self":[{"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/18","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=18"}],"version-history":[{"count":0,"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/18\/revisions"}],"wp:attachment":[{"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=18"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=18"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/galhano.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=18"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}