MySQL第一次作业

一、库的建立

sql 复制代码
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mydb2_stuinfo      |
| mydb3_employee     |
| mydb4_product      |
| mydbl_test         |
| mysql              |
| performance_schema |
| sys                |
| temp2              |
+--------------------+
9 rows in set (0.00 sec)

mysql> create database mydb6_product;
Query OK, 1 row affected (0.01 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mydb2_stuinfo      |
| mydb3_employee     |
| mydb4_product      |
| mydb6_product      |
| mydbl_test         |
| mysql              |
| performance_schema |
| sys                |
| temp2              |
+--------------------+
10 rows in set (0.00 sec)

二、建立employees表 (有主键,非空,默认值的要求)

sql 复制代码
mysql> create table employees(
    -> id int primary key,
    -> name varchar(50) not null,
    -> age int,
    -> gender varchar(10) not null default 'unknown',
    -> salary float);
Query OK, 0 rows affected (0.03 sec)

mysql> desc employees;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id     | int         | NO   | PRI | NULL    |       |
| name   | varchar(50) | NO   |     | NULL    |       |
| age    | int         | YES  |     | NULL    |       |
| gender | varchar(10) | NO   |     | unknown |       |
| salary | float       | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

三、建立 orders表 (有主键和非空的要求)

sql 复制代码
​
mysql> create table orders(
    -> id int primary key,
    -> name varchar(100) not null,
    -> price float,
    -> quantity int,
    -> category varchar(50));
Query OK, 0 rows affected (0.03 sec)

mysql> desc orders;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int          | NO   | PRI | NULL    |       |
| name     | varchar(100) | NO   |     | NULL    |       |
| price    | float        | YES  |     | NULL    |       |
| quantity | int          | YES  |     | NULL    |       |
| category | varchar(50)  | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+
5 rows in set (0.00 sec)

​

四、建立invoices表 (有主键自增长,外键关联,数值范围的要求)

sql 复制代码
mysql> create table invoices(
    -> number int primary key,
    -> order_id int,foreign key (order_id) references orders(id),
    -> in_date date,
    -> total_amount float ,check(total_amount>0));
Query OK, 0 rows affected (0.04 sec)

mysql> alter table invoices modify number int auto_increment;
Query OK, 0 rows affected (0.06 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc invoices;
+--------------+-------+------+-----+---------+----------------+
| Field        | Type  | Null | Key | Default | Extra          |
+--------------+-------+------+-----+---------+----------------+
| number       | int   | NO   | PRI | NULL    | auto_increment |
| order_id     | int   | YES  | MUL | NULL    |                |
| in_date      | date  | YES  |     | NULL    |                |
| total_amount | float | YES  |     | NULL    |                |
+--------------+-------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
相关推荐
xujiangyan_32 分钟前
MySQL的半同步模式
数据库·git·mysql
飞翔沫沫情1 小时前
《MySQL 5.7.44审计合规实践:插件集成与日志分割自动化方案》
数据库·mysql·mysql审计
MXsoft6181 小时前
云原生运维在 2025 年的发展蓝图
运维·服务器·数据库
不辉放弃2 小时前
SQL 主键(Primary Key)
数据库·sql·oracle
qq_339282232 小时前
PostgreSQL-常用命令
数据库·postgresql·oracle
沸材3 小时前
Redis——实现消息队列
数据库·redis·消息队列
しかし1181143 小时前
C语言队列的实现
c语言·开发语言·数据结构·数据库·经验分享·链表
⁤⁢初遇3 小时前
MySQL---数据库基础
数据库
wolf犭良3 小时前
27、Python 数据库操作入门(SQLite)从基础到实战精讲
数据库·python·sqlite
画扇落汗3 小时前
Python 几种将数据插入到数据库的方法(单行插入、批量插入,SQL Server、MySQL,insert into)
数据库·python·sql·mysql