|
创建表格
要在MySQL中创建表格,请使用"CREATE TABLE"语句。
确保在创建连接时定义了数据库的名称。
示例创建一个名为 "customers" 的表格:- import mysql.connector
- mydb = mysql.connector.connect(
- host="localhost",
- user="yourusername",
- password="yourpassword",
- database="mydatabase"
- )
- mycursor = mydb.cursor()
- mycursor.execute("CREATE TABLE customers (name VARCHAR(255), address VARCHAR(255))")
复制代码 如果上述代码没有出现错误,那么您已成功创建了一个表格。
检查表格是否存在
您可以通过使用"SHOW TABLES"语句列出数据库中的所有表格来检查表格是否存在:
示例返回系统中的表格列表:- import mysql.connector
- mydb = mysql.connector.connect(
- host="localhost",
- user="yourusername",
- password="yourpassword",
- database="mydatabase"
- )
- mycursor = mydb.cursor()
- mycursor.execute("SHOW TABLES")
- for x in mycursor:
- print(x)
复制代码 主键
在创建表格时,您还应该为每个记录创建一个具有唯一键的列。
这可以通过定义主键来完成。
我们使用语句"INT AUTO_INCREMENT PRIMARY KEY",它将为每个记录插入一个唯一的数字。从1开始,每个记录递增一次。
示例在创建表格时创建主键:- import mysql.connector
- mydb = mysql.connector.connect(
- host="localhost",
- user="yourusername",
- password="yourpassword",
- database="mydatabase"
- )
- mycursor = mydb.cursor()
- mycursor.execute("CREATE TABLE customers (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), address VARCHAR(255))")
复制代码 如果表格已经存在,可以使用ALTER TABLE关键字:
示例在现有表格上创建主键:- import mysql.connector
- mydb = mysql.connector.connect(
- host="localhost",
- user="yourusername",
- password="yourpassword",
- database="mydatabase"
- )
- mycursor = mydb.cursor()
- mycursor.execute("ALTER TABLE customers ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY")
复制代码 插入数据到表格
要在MySQL中填充表格,请使用"INSERT INTO"语句。
示例在 "customers" 表格中插入一条记录:- import mysql.connector
- mydb = mysql.connector.connect(
- host="localhost",
- user="yourusername",
- password="yourpassword",
- database="mydatabase"
- )
- mycursor = mydb.cursor()
- sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
- val = ("John", "Highway 21")
- mycursor.execute(sql, val)
- mydb.commit()
- print(mycursor.rowcount, "record inserted.")
复制代码 重要提示:请注意语句 mydb.commit()。这是必需的,以使更改生效,否则不会对表格进行更改。
插入多行
要将多行插入到表格中,使用 executemany() 方法。
executemany() 方法的第二个参数是包含要插入数据的元组列表:
示例填充 "customers" 表格的数据:- import mysql.connector
- mydb = mysql.connector.connect(
- host="localhost",
- user="yourusername",
- password="yourpassword",
- database="mydatabase"
- )
- mycursor = mydb.cursor()
- sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
- val = [
- ('Peter', 'Lowstreet 4'),
- ('Amy', 'Apple st 652'),
- ('Hannah', 'Mountain 21'),
- ('Michael', 'Valley 345'),
- ('Sandy', 'Ocean blvd 2'),
- ('Betty', 'Green Grass 1'),
- ('Richard', 'Sky st 331'),
- ('Susan', 'One way 98'),
- ('Vicky', 'Yellow Garden 2'),
- ('Ben', 'Park Lane 38'),
- ('William', 'Central st 954'),
- ('Chuck', 'Main Road 989'),
- ('Viola', 'Sideway 1633')
- ]
- mycursor.executemany(sql, val)
- mydb.commit()
- print(mycursor.rowcount, "were inserted.")
复制代码 获取插入的ID
您可以通过询问游标对象来获取刚刚插入的行的ID。
注意:如果插入多行,将返回最后插入行的ID。
示例插入一行,并返回ID:- import mysql.connector
- mydb = mysql.connector.connect(
- host="localhost",
- user="yourusername",
- password="yourpassword",
- database="mydatabase"
- )
- mycursor = mydb.cursor()
- sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
- val = ("Michelle", "Blue Village")
- mycursor.execute(sql, val)
- mydb.commit()
- print("1 record inserted, ID:", mycursor.lastrowid)
复制代码 最后
为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。
看完如果觉得有帮助,欢迎点赞、收藏和关注
来源:https://www.cnblogs.com/xiaowange/p/17822976.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|