用Navicat导入导向把sale_data.txt导入数据库taobao中
注意:txt文本的编码格式默认为ANSI编码,而我们要修改成UTF-8编码,不然在导入数后,会出现乱码现象
打开txt文件,点击txt文件左上角的文件,选择“另存为”
此时在“保存”时,选择UTF-8编码,进行保存
接着打开Navicat,选择数据库导入向导txt文本
接着选择要导入的文件的格式,这里我就选择了文本文件(*.txt)格式,然后点击“下一步”。
如图,点击浏览按钮来查找要导入的txt文件,编码格式选择UTF-8(之前txt文本默认编码格式为ANSI,所以我们要修改txt文本的编码格式为UTF-8,保持编码一制)
接着选择记录分隔符以及字段分隔符,本例选择CRLF-Carriage-Return Line-Feed回车换行来分隔每一行数据(CR—Carriage-Return回车,LF—Line–Feed换行)
本例采用的是逗号分隔每个字段,所以这里选择逗号(,)字段分隔符 如果是用空格分隔每个字段,则选择空格字段分隔符
8.接着输入数值,字段名行表示字段在txt文本中所对应的行数,我的是第一行,第一个数据行表示数据在txt文本中最开始的行数,我的数据最开始是在第二行的
9.接着可以看到要导入的表
10.
11.
12.
13.
(1)连接数据库
import pymysql db = pymysql.Connect( host="localhost", port=3306, user="root", password="root", db="taobao", charset="utf8" )
(2)查询位置在江浙沪的商品销量
#获取游标 cur = db.cursor() #执行SQL语句,进行查询 sql = "SELECT * FROM sale_data WHERE 位置 IN (%s,%s,%s)" cur.execute(sql, ("江苏","浙江","上海")) #获取查询结果 result = cur.fetchall() for item in result: print(result)
(3)删除价格低于100元的商品记录
# 执行SQL语句,进行删除 sql = 'DELETE RFOM sale_data WHERE 价格 < 100' cur.execute(sql) # 没有设置默认自动提交,需要主动提交,以保存所执行的语句 db.commit()
(4)把位置“江苏” “浙江” “上海” 统一改为“江浙沪”
#执行sql语句,进行修改 sql = "UPDATE sale_data SET 位置 = %s WHERE 位置 IN (%s,%s,%s)" cur.execute(sql, ("江浙沪","江苏","浙江","上海")) #没有设置默认自动提交,需要主动提交,以保存所执行的语句 db.commit()
(5)