首先介绍一下SQL数据库的一些基本操作:

1创建 2删除 3写入 4更新(修改) 5条件选择

有了以上基本操作,就可以建立并存储一个简单的数据库了。

放出python调用的代码: 此处是调用dos 操作数据库 不如下面的简单

# -*- coding: utf-8 -*-
"""
Created on Mon May 6 09:59:32 2019 @author: wenzhe.tian
""" import MySQLdb # 打开数据库连接
db = MySQLdb.connect("localhost", "root", "twz1478963", "TESTDB", charset='utf8' )
# 使用cursor()方法获取操作游标
cursor = db.cursor() # 如果数据表已经存在使用 execute() 方法删除表。
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")
print(cursor.fetchone())
cursor.execute("SELECT VERSION()") # 创建数据表SQL语句
sql = """CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT );""" cursor.execute(sql) ### %\ 替换
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, \
LAST_NAME, AGE, SEX, INCOME) \
VALUES (%s, %s, %s, %s, %s );" % \
("'Mac'", "'Mohan'", 20, "'M'", 9000) try:
# 执行sql语句
cursor.execute(sql)
print(cursor.fetchone())
# 提交到数据库执行
db.commit()
except:
# Rollback in case there is any error
db.rollback() ### %\ 替换
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, \
LAST_NAME, AGE, SEX, INCOME) \
VALUES (%s, %s, %s, %s, %s );" % \
("'John'", "'Will'", 24, "'M'", 12000) try:
# 执行sql语句
cursor.execute(sql)
print(cursor.fetchone())
# 提交到数据库执行
db.commit()
except:
# Rollback in case there is any error
db.rollback() sql = "SELECT * FROM EMPLOYEE \
WHERE first_name like %s" % ("'%h_'"); '''
WHERE A and/or B between in(A,B)
% 表示多个字值,_ 下划线表示一个字符;
M% : 为能配符,正则表达式,表示的意思为模糊查询信息为 M 开头的。
%M% : 表示查询包含M的所有内容。
%M_ : 表示查询以M在倒数第二位的所有内容
''' # DELETE FROM EMPLOYEE WHERE AGE <20 try:
# 执行SQL语句
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
# 打印结果
print ("fname=%s,lname=%s,age=%s,sex=%s,income=%s" % \
(fname, lname, age, sex, income ))
except:
print ("Error: unable to fecth data") # 关闭数据库连接
db.close()

以上代码即将SQL语言写出字符的形式 并调用接口执行操作。

下面放一些存储excel至新建数据库的例子作为参考: 此处是调用dataframe的to_sql进行操作 需要注意的是encoding='gbk'的中文转化问题.

写入数据库时 表单名字不需要提前创建。

# -*- coding: utf-8 -*-
"""
Created on Tue May 7 15:40:23 2019 @author: wenzhe.tian
""" from sqlalchemy import create_engine
import pandas as pd host = '127.0.0.1'
port= 3306
db = 'beilixinyuan'
user = 'root'
password = 'twz1478963' engine = create_engine(str(r"mysql+mysqldb://%s:" + '%s' + "@%s/%s?charset=utf8") % (user, password, host, db)) try:
# df = pd.read_csv(r'D:\2PHEV_v3.csv',encoding='gbk')
# 读取
table='sale_phev'
sql = "SELECT * FROM "+'%s' %(table)
df=pd.read_sql(sql,con=engine)
# 写入
# df.to_sql('sale_ev', con=engine, if_exists='append', index=False)
except Exception as e: print(e.message) # 导出方法2
#'''
#WHERE A and/or B between in(A,B)
#% 表示多个字值,_ 下划线表示一个字符;
#M% : 为能配符,正则表达式,表示的意思为模糊查询信息为 M 开头的。
#%M% : 表示查询包含M的所有内容。
#%M_ : 表示查询以M在倒数第二位的所有内容
#'''
#
#
#
import MySQLdb
import pandas as pd
# 打开数据库连接
db = MySQLdb.connect("localhost", "root", "twz1478963", "beilixinyuan", charset='utf8' )
# 使用cursor()方法获取操作游标
cursor = db.cursor(cursorclass=MySQLdb.cursors.DictCursor) sql = "SELECT * FROM sale_ev" # DELETE FROM EMPLOYEE WHERE AGE <20 try:
# 执行SQL语句
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
pd.read_sql(sql,con=engine) except:
print ("Error: unable to fecth data") h=list(results)
df=pd.DataFrame(h)
del results
del h

python将excel数据写入数据库,或从库中读取出来的更多相关文章

  1. 使用python将excel数据导入数据库

    使用python将excel数据导入数据库 因为需要对数据处理,将excel数据导入到数据库,记录一下过程. 使用到的库:xlrd 和 pymysql (如果需要写到excel可以使用xlwt) 直接 ...

  2. PHP读取Excel数据写入数据库(包含图片和文字)

    public function test(){ $exts = 'xlsx'; //导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入 import("Org ...

  3. Django上传excel表格并将数据写入数据库

    前言: 最近公司领导要统计技术部门在各个业务条线花费的工时百分比,而 jira 当前的 Tempo 插件只能统计个人工时.于是就写了个报表工具,将 jira 中导出的个人工时excel表格 导入数据库 ...

  4. 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中

      先看一下我要实现的功能界面:   这个界面的功能在图中已有展现,课程分配(教师教授哪门课程)在之前的页面中已做好.这个页面主要实现的是授课,即给老师教授的课程分配学生.此页面实现功能的步骤已在页面 ...

  5. 通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中

    摘自:http://blog.csdn.net/mazhaojuan/article/details/8592015 通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来 ...

  6. 【转】 如何导入excel数据到数据库,并解决导入时间格式问题

    在办公环境下,经常会用到处理excel数据,如果用写程序导入excel数据到数据库那就太麻烦了,涉及解析excel,还要各种格式问题,下面简单利用数据库本身支持的功能解决这类导入问题. 准备 创建表 ...

  7. Excel数据导入数据库

    maven依赖 <!--excel相关依赖--> <dependency> <groupId>org.apache.poi</groupId> < ...

  8. 上传excel数据到数据库中

    上传excel表格数据到数据库 导入固定路径下的excel数据到数据库 <form id="disposeFlightDataForm" action="../up ...

  9. 利用python将excel数据解析成json格式

    利用python将excel数据解析成json格式 转成json方便项目中用post请求推送数据自定义数据,也方便测试: import xlrdimport jsonimport requests d ...

随机推荐

  1. c++笔记3

    一基本语法: 1.1 字符串:支持标准C的 const char* pch=0/"";//不指向任何对象和指向空字符串.C++提供的string类可提供字符串的所有操作,最好是融合 ...

  2. keil-rtx

    OS:任务级设计,任务间耦合小:改变裸机前后台设计方案中后台任务轮训无优先级重要任务得不到确定性响应:伪并行,提高利用率. 在keilv4.74最后一个版本之后,KIELV5将KEIL-RTX该为CM ...

  3. 微服务实践分享(2)api网关

    1.作用[http://chuansong.me/n/465796751848]: 一个完整的.「面向接入」的API GW需要包含以下功能: 面向运行期 对客户端实现身份认证 通信会话的秘钥协商,报文 ...

  4. Elasticsearch优化

    2.out of memory错误 因为默认情况下es对字段数据缓存(Field Data Cache)大小是无限制的,查询时会把字段值放到内存,特别是facet查询,对内存要求非常高,它会把结果都放 ...

  5. SpriingMVC执行流程结构

    SpringMVC也叫spring web mvc,属于表现层的框架,是Spring框架的一部分. Spring  MVC请求流程图: request-------->DispatcherSer ...

  6. c#基础值类和引用类型_字符串

    值类型和引用类型区别:1.值类型和引用类型在内存上存储的地方不一样.2.在传递值类型和传递引用类型的时候,传递的方式不一样.值类型我们称之为值传递,引用类型我们称之为引用传递.我们学的值类型和引用类型 ...

  7. Java程序运行参数

    Java主函数形式:public static void main(String[] args){......} 也就是说可以向Java程序传递一个String[]. 1.在IDEA中debug.ru ...

  8. Android开发学习——小细节注意

    Android中通过Intent调用其他应用的方法(转) Android中两种序列化方式的比较Serializable和Parcelable http://www.jcodecraeer.com/a/ ...

  9. SQL SERVER之填充因子

    建SQL SERVER索引的时候有一个选项,即Fillfactor(填充因子). 这个可能很少人会去注意它,但它也是比较重要的.大家可能也都知道有这个东西,但是如何去使用它,可能会比较迷糊.另外,即使 ...

  10. windows server 2008 r2 启用 Windows Defender

    单击“开始”,指向“管理工具”,然后单击“服务器管理器”. 在“服务器管理器”中,单击“功能”,然后在“服务器管理器”细节窗格中的“功能摘要”下,单击“添加功能”. 此时会启动“添加功能向导”. 在“ ...