Determination of Data Types and Data Dictioary Tasksheet
Determination of Data Types and Data Dictioary Tasksheet
A data type is a category that defines the type of values that a column can hold. In a database, a
data type is a specification that determines the type of data that can be stored in a column of a
table. This ensures that only the appropriate data type can be stored in the column.
In MySQL there are three main data types: string, numeric, and date and time.
CHAR(size) A FIXED length string (can contain letters, numbers, and special characters).
The size parameter specifies the column length in characters - can be from 0
to 255. Default is 1
VARCHAR(size) A VARIABLE length string (can contain letters, numbers, and special
characters). The size parameter specifies the maximum string length in
characters - can be from 0 to 65535
BINARY(size) Equal to CHAR(), but stores binary byte strings. The size parameter specifies
the column length in bytes. Default is 1
VARBINARY(size) Equal to VARCHAR(), but stores binary byte strings. The size parameter
specifies the maximum column length in bytes.
TINYBLOB For BLOBs (Binary Large Objects). Max length: 255 bytes
BLOB(size) For BLOBs (Binary Large Objects). Holds up to 65,535 bytes of data
MEDIUMBLOB For BLOBs (Binary Large Objects). Holds up to 16,777,215 bytes of data
ENUM(val1, val2, A string object that can have only one value, chosen from a list of possible
val3, ...) values. You can list up to 65535 values in an ENUM list. If a value is
inserted that is not in the list, a blank value will be inserted. The values are
sorted in the order you enter them
SET(val1, val2, A string object that can have 0 or more values, chosen from a list of possible
val3, ...) values. You can list up to 64 values in a SET list
A data type is a category that defines the type of values that a column can hold. In a database, a
data type is a specification that determines the type of data that can be stored in a column of a
table. This ensures that only the appropriate data type can be stored in the column.
In MySQL there are three main data types: string, numeric, and date and time.
BIT(size) A bit-value type. The number of bits per value is specified in size.
The size parameter can hold a value from 1 to 64. The default value
for size is 1.
TINYINT(size) A very small integer. Signed range is from -128 to 127. Unsigned range is
from 0 to 255. The size parameter specifies the maximum display width
(which is 255)
SMALLINT(size) A small integer. Signed range is from -32768 to 32767. Unsigned range is
from 0 to 65535. The size parameter specifies the maximum display width
(which is 255)
FLOAT(size, d) A floating point number. The total number of digits is specified in size. The
number of digits after the decimal point is specified in the d parameter. This
syntax is deprecated in MySQL 8.0.17, and it will be removed in future
MySQL versions
FLOAT(p) A floating point number. MySQL uses the p value to determine whether to
use FLOAT or DOUBLE for the resulting data type. If p is from 0 to 24, the
data type becomes FLOAT(). If p is from 25 to 53, the data type becomes
DOUBLE()
DOUBLE(size, d) A normal-size floating point number. The total number of digits is specified
in size. The number of digits after the decimal point is specified in
the d parameter
DOUBLE
PRECISION(size, d)
DECIMAL(size, d) An exact fixed-point number. The total number of digits is specified in size.
The number of digits after the decimal point is specified in the d parameter.
The maximum number for size is 65. The maximum number for d is 30. The
default value for size is 10. The default value for d is 0.
Note: All the numeric data types may have an extra option: UNSIGNED or ZEROFILL. If you
add the UNSIGNED option, MySQL disallows negative values for the column. If you add the
ZEROFILL option, MySQL automatically also adds the UNSIGNED attribute to the column.
Data Dictionary consists of database metadata. It has records about objects in the database.
1. Tables:
o Name: A unique identifier for the table.
o Description: A brief explanation of the table's purpose.
o Columns: A list of all columns (fields) in the table.
2. Columns:
o Name: A unique identifier for the column.
o Data Type: The type of data the column can hold (e.g., integer, string, date).
o Length: The maximum or fixed length of the data.
o Default Value: The value assigned to the column if no value is provided.
o Constraints: Rules or restrictions applied to the column (e.g., NOT NULL,
UNIQUE, PRIMARY KEY, FOREIGN KEY).
3. Indexes:
o Name: A unique identifier for the index.
o Columns: The columns included in the index.
o Type: The type of index (e.g., clustered, non-clustered).
4. Relationships:
o Primary Keys: Unique identifiers for rows within a table.
o Foreign Keys: References to primary keys in other tables, establishing
relationships.
o Referential Integrity Constraints: Rules that ensure data consistency between
related tables.
5. Views:
o Name: A unique identifier for the view.
o Definition: The SQL statement that defines the view.
6. Stored Procedures:
o Name: A unique identifier for the stored procedure.
o Definition: The SQL code that defines the procedure.
7. Triggers:
o Name: A unique identifier for the trigger.
o Event: The event that triggers the procedure (e.g., INSERT, UPDATE,
DELETE).
o Definition: The SQL code that defines the trigger.
8. Comments:
o Description: Additional notes or explanations about the database object.
Types of dictionaries
In general, DBMS data dictionaries are of two types. These dictionaries are as follows −
During a computerization project (most for wide projects), the team in charge of the software
design is not the same with the one in charge of programming.
To enable the team of programmers to be in phase with the LMD produced by the designing
team, it’s essential to make a data dictionary which will help them to easily implement the
database.
The data dictionary takes the fields of LMD and describes and organizes them into table.
These are the examples of data dictionary.
Example1: personal details of a student
<StudentPersonalDetails>
Student_ID Student_Name Student_Address Student_City