-- schema.sql
DROP DATABASE IF EXISTS awesome;
CREATE DATABASE awesome;
USE awesome;
-- 没有创建新的用户,无需授权
CREATE TABLE users
(
id varchar(50) NOT NULL,
email varchar(50) NOT NULL,
password varchar(50) NOT NULL,
admin bool NOT NULL,
name varchar(50) NOT NULL,
image varchar(50) NOT NULL,
created_at real NOT NULL,
UNIQUE KEY idx_email (email),
KEY idx_created_at (created_at),
PRIMARY KEY (id)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4;
CREATE TABLE blogs
(
id varchar(50) NOT NULL,
user_id varchar(50) NOT NULL,
user_name varchar(50) NOT NULL,
user_image varchar(500) NOT NULL,
name varchar(50) NOT NULL,
summary varchar(200) NOT NULL,
content mediumtext NOT NULL,
created_at real NOT NULL,
KEY idx_created_at (created_at),
PRIMARY KEY (id)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4;
CREATE TABLE comments
(
id varchar(50) NOT NULL,
blog_id varchar(50) NOT NULL,
user_id varchar(50) NOT NULL,
user_name varchar(50) NOT NULL,
user_image varchar(500) NOT NULL,
content mediumtext NOT NULL,
created_at real NOT NULL,
KEY idx_created_at (created_at),
PRIMARY KEY (id)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4;
# test.py
import asyncio
import orm
from models import User
async def test(loop):
await orm.create_pool(user='root', password='password', db='awesome', loop=loop)
u = User(name='Test', email='test@example.com', password='1234567890', image='abut:blank')
await u.save()
loop = asyncio.get_event_loop()
loop.run_until_complete(test(loop))
mysql> SHOW TABLES;
+-------------------+
| Tables_in_awesome |
+-------------------+
| blogs |
| comments |
| users |
+-------------------+
3 rows in set (0.01 sec)
mysql> SELECT * FROM users;
+----------------------------------------------------+------------------+------------+-------+------+------------+------------------+
| id | email | password | admin | name | image | created_at |
+----------------------------------------------------+------------------+------------+-------+------+------------+------------------+
| 0016224749940471654612e409b419592c4034b9e3d35aa000 | test@example.com | 1234567890 | 0 | Test | abut:blank | 1622474994.04746 |
+----------------------------------------------------+------------------+------------+-------+------+------------+------------------+
1 row in set (0.00 sec)
xian_wen
【schema.sql 修改】:
``
【test.py 修改】: