SQL学习笔记--2

124 篇文章 0 订阅

昨天状态简直是不好.
昨天晚上一直睡不着,今天早上起来后没精神,书放在旁边也不想翻,想查一下其他git命令,没办法集中精神去看。

中午该补觉了,躺在床上一个小时没睡着。
下午看书脑袋痛,恶性循环啊,天啊。

1 安装mysql-server

for-python@ubuntu:~$ sudo apt-get install mysql-server libmysqlclient-dev

这里写图片描述

安装过程中会需要设置mysql密码:
这里写图片描述

2 MySQL常用命令
习惯上,MySQL关键字都用大写.

2.1 mysql -u root -p

用户名root,再输入刚才安装过程中设置的密码。
(u-user; p-password)

这里写图片描述

2.2 mysql> SHOW DATABASES;

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (3.26 sec)

2.3 CREATE DATABASE FLASKAPP;

mysql> CREATE DATABASE FLASKAPP;
Query OK, 1 row affected (1.94 sec)

2.4 USE FLASKAPP;

mysql> USE FLASKAPP;
Database changed

2.5 CREATE TABLE users()

mysql> CREATE TABLE users(id INT(11) AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100),email VARCHAR(100), username VARCHAR(30), password VARCHAR(100), register_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP);
Query OK, 0 rows affected (1.09 sec)

CREATE TABLE Syntax


  1. 每个字段按定义由三部分组成:
    名称(id, name,email…);
    数据类型(VARCHAR, TIMESTAMP…);
    其他可选属性(AUTO_INCREMENT, DEFAULT…).
  2. 这里把id设置成了主键(PRIMARY KEY),这里mysql是一个表存储数据,primary key用于唯一标识表中的某一条记录。
  3. VARCHAR is a good choice for the name, owner, and species columns because the column values vary in length. The lengths in those column definitions need not all be the same.
  4. AUTO_INCREMENT
    An integer or floating-point column can have the additional attribute AUTO_INCREMENT. When you insert a value of NULL (recommended) or 0 into an indexed AUTO_INCREMENT column, the column is set to the next sequence value. Typically this is value+1, where value is the largest value for the column currently in the table. AUTO_INCREMENT sequences begin with 1.

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| FLASKAPP           |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (1.36 sec)

2.6 DESCRIBE users;

mysql> DESCRIBE users;
+---------------+--------------+------+-----+-------------------+----------------+
| Field         | Type         | Null | Key | Default           | Extra          |
+---------------+--------------+------+-----+-------------------+----------------+
| id            | int(11)      | NO   | PRI | NULL              | auto_increment |
| name          | varchar(100) | YES  |     | NULL              |                |
| email         | varchar(100) | YES  |     | NULL              |                |
| username      | varchar(30)  | YES  |     | NULL              |                |
| password      | varchar(100) | YES  |     | NULL              |                |
| register_date | timestamp    | NO   |     | CURRENT_TIMESTAMP |                |
+---------------+--------------+------+-----+-------------------+----------------+
6 rows in set (0.34 sec)

下面的命令都是用来查询MySQL表的,这里新建的表什么数据也没有,所以什么都查不到。

2.7 SELECT * FROM users;

mysql> SELECT * FROM users;
Empty set (0.06 sec)

2.8 SELECT * FROM users WHERE id=2;

mysql> SELECT * FROM users WHERE id=2;
Empty set (0.10 sec)

2.9 SELECT * FROM users WHERE name LIKE “%mio%”;

mysql> SELECT * FROM users WHERE name LIKE "%mio%";
Empty set (0.00 sec)

2.10 SELECT username,register_date FROM users WHERE name LIKE “%mio%”;

mysql> SELECT username,register_date FROM users WHERE name LIKE "%mio%";
Empty set (0.00 sec)

2.11 DELETE FROM users WHERE id=1;

DELETE 语法与SELECT 类似,只要把SELECT * 换成DELETE就可以了。
删除之后不能恢复了,所以删除之前用SELECT查看一下,防止误删。

mysql> DELETE FROM users WHERE id=1;
Query OK, 0 rows affected (0.84 sec)

2.12 UPDATE

mysql> UPDATE users SET name="mio-muhan" WHERE id=2;
Query OK, 0 rows affected (0.05 sec)
Rows matched: 0  Changed: 0  Warnings: 0

2.13 QUIT

mysql> QUIT
Bye
for-python@ubuntu:~$

建立自己的数据库后,接下来就是把mysql应用到Flask Web Development 代码中,用来存储用户注册信息,验证用户登录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值