(Pour moi) Flask_AWS_3 (Vérifiez si SQL fonctionne)

article

  1. Créez une table avec db
  2. Installation de PyMySQL
  3. Contrôle de fonctionnement

1.Faites un tableau avec db

--Connectez-vous à phpMyAdmin avec l'adresse IP publique AWS / phpmyadmin / configurée avant http: // --Créez une base de données appelée test --Cliquez sur test, sélectionnez SQL en haut et entrez-le

Instruction SQL


CREATE TABLE players (
  id INT NOT NULL PRIMARY KEY,
  name VARCHAR(32),
  level INT,
  job_id INT
);

CREATE TABLE jobs (
  id INT NOT NULL PRIMARY KEY,
  job_name VARCHAR(10),
  vitality INT,
  strength INT,
  agility INT,
  intelligence INT,
  luck INT
);

INSERT
  INTO players(id,name,level,job_id)
  VALUES
    (1,"Taki",12,6),
    (2,"Ken",7,2),
    (3,"Rin",1,1),
    (4,"Yu",3,3),
    (5,"Claire",10,4),
    (6,"spectacle",5,2),
    (7,"Fleurs de cerisier",7,1),
    (8,"Jack",5,4),
    (9,"Fermer à clé",12,6),
    (10,"Juin",1,NULL);

INSERT
  INTO jobs(id, job_name, vitality, strength, agility, intelligence, luck)
  VALUES
    (1,"guerrier",8,8,4,4,3),
    (2,"Voleurs",3,3,8,5,7),
    (3,"chasseur",5,5,7,5,4),
    (4,"sorcier",3,2,6,8,6),
    (5,"Moine",5,5,3,7,5),
    (6,"Courageux",10,10,10,10,10);

2. Installation de PyMySQL

Terminal


#Connectez-vous d'abord à AWS
$ ssh -i ~/.ssh/FirstKey.pem ec2-user@(IP publique)

#Vérifiez le module
$$ pip freeze

#Installation de PyMySQL
$$ pip install PyMySQL

3. Contrôle de fonctionnement

Terminal


#création de fichier py
$$ vi /var/www/html/db_test.py

db_test.py


#Appuyez sur i pour écrire le mode, esc →:Économisez avec wq
from flask import Flask, render_template
import pymysql
app = Flask(__name__)

def getConnection():
    return pymysql.connect(
        host='localhost',
        db='test',
        user='root',
        password='Même mot de passe que phpMySQL',
        charset='utf8',
        cursorclass=pymysql.cursors.DictCursor
    )

@app.route('/')
def select_sql():
  
    connection = getConnection()
    message = "Hello world"

    sql = "SELECT * FROM players"
    cursor = connection.cursor()
    cursor.execute(sql)
    players = cursor.fetchall()

    cursor.close()
    connection.close()

    return render_template('view.html', message = message, players = players)

Terminal


#Tout d'abord, créez des modèles pour mettre le fichier de modèle
$$ mkdir /var/www/html/templates

##Créez un fichier modèle dans ce
$$ vi /var/www/html/templates/view.html

view.html


<!--L'écriture est la même qu'avant-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>Hello SQL</h1>
    <p>{{ message }}</p>

    {% for player in players %}
        <p>{{ player }}</p>
    {% endfor %}
</body>
</html>

Terminal


#Déplacer le fichier py
$$ python3 /var/www/html/db_test.py
#Lorsque vous avez terminé, ctrl+c

--Connectez-vous à http: // adresse IP publique définie dans AWS: 5000 et réussissez si elle s'affiche correctement

4. À la fin

――Si vous allez aussi loin, écrivez simplement un script!

Recommended Posts

(Pour moi) Flask_AWS_3 (Vérifiez si SQL fonctionne)
Python> Argument d'exécution> Vérifier si -d est attaché
python> Vérifier si le code est imprimable> Utiliser ord () / all (c dans string.printable for c in hello)
Vérifiez si la chaîne est un nombre en python
Vérifiez s'il s'agit d'Unix dans le langage de script
Vérifiez si le câble LAN est déconnecté sous Linux
Vérifiez s'il s'agit d'Unix dans le langage de script