Python MySQL - Tạo cơ sở dữ liệu

Bạn có thể tạo cơ sở dữ liệu trong MYSQL bằng cách sử dụng truy vấn TẠO CƠ SỞ DỮ LIỆU.

Cú pháp

Sau đây là cú pháp của truy vấn TẠO CƠ SỞ DỮ LIỆU:

CREATE DATABASE name_of_the_database

Thí dụ

Câu lệnh sau tạo một cơ sở dữ liệu với tên mydb trong MySQL:

mysql> CREATE DATABASE mydb;
Query OK, 1 row affected (0.04 sec)

Nếu bạn quan sát danh sách cơ sở dữ liệu bằng cách sử dụng câu lệnh SHOW DATABASES, bạn có thể quan sát cơ sở dữ liệu mới được tạo trong đó như hình dưới đây:

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| logging            |
| mydatabase         |
| mydb               |
| performance_schema |
| students           |
| sys                |
+--------------------+
26 rows in set (0.15 sec)

Tạo cơ sở dữ liệu trong MySQL bằng python

Sau khi thiết lập kết nối với MySQL, để thao tác dữ liệu trong đó, bạn cần kết nối với cơ sở dữ liệu. Bạn có thể kết nối với cơ sở dữ liệu hiện có hoặc tạo cơ sở dữ liệu của riêng bạn.

Bạn sẽ cần các đặc quyền đặc biệt để tạo hoặc xóa cơ sở dữ liệu MySQL. Vì vậy, nếu bạn có quyền truy cập vào người dùng gốc, bạn có thể tạo bất kỳ cơ sở dữ liệu nào.

Thí dụ

Ví dụ sau thiết lập kết nối với MYSQL và tạo cơ sở dữ liệu trong đó.

import mysql.connector

#establishing the connection
conn = mysql.connector.connect(user='root', password='password', host='127.0.0.1')

#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Doping database MYDATABASE if already exists.
cursor.execute("DROP database IF EXISTS MyDatabase")

#Preparing query to create a database
sql = "CREATE database MYDATABASE";

#Creating a database
cursor.execute(sql)

#Retrieving the list of databases
print("List of databases: ")
cursor.execute("SHOW DATABASES")
print(cursor.fetchall())

#Closing the connection
conn.close()

Đầu ra

List of databases:
[('information_schema',), ('dbbug61332',), ('details',), ('exampledatabase',), ('mydatabase',), ('mydb',), ('mysql',), ('performance_schema',)]