use testdb;
CREATE TABLE inventory (
material_no VARCHAR(18),
warehouse_no VARCHAR(10),
quantity DECIMAL(19 , 2 ) NOT NULL DEFAULT 0,
base_unit VARCHAR(10) NOT NULL,
PRIMARY KEY (material_no , warehouse_no)
);
INSERT INTO tasks(title ,start_date, end_date)
VALUES('Learn MySQL NOT NULL constraint', '2017-02-01','2017-02-02'),
('Check and update NOT NULL constraint to your database', '2017-02-01',NULL);
SELECT
*
FROM
tasks
WHERE
end_date IS NULL;
+----+-------------------------------------------------------+------------+----------+
| id | title | start_date | end_date |
+----+-------------------------------------------------------+------------+----------+
| 2 | Check and update NOT NULL constraint to your database | 2017-02-01 | NULL |
+----+-------------------------------------------------------+------------+----------+
1 row in set
UPDATE tasks
SET
end_date = start_date + 7
WHERE
end_date IS NULL;
SELECT
*
FROM
tasks;
+----+-------------------------------------------------------+------------+------------+
| id | title | start_date | end_date |
+----+-------------------------------------------------------+------------+------------+
| 1 | Learn MySQL NOT NULL constraint | 2017-02-01 | 2017-02-02 |
| 2 | Check and update NOT NULL constraint to your database | 2017-02-01 | 2017-02-08 |
+----+-------------------------------------------------------+------------+------------+
2 rows in set
ALTER TABLE table_name
CHANGE old_column_name new_column_name new_column_definition;
ALTER TABLE tasks
CHANGE end_date end_date DATE NOT NULL;
mysql> DESC tasks;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| title | varchar(255) | NO | | NULL | |
| start_date | date | NO | | NULL | |
| end_date | date | NO | | NULL | |
+------------+--------------+------+-----+---------+----------------+
4 rows in set