Mysql¶
使用¶
- 安装mysql-connect的包
代码如下:
1 | import mysql.connector |
事务控制¶
Connector提供了简单的事务控制函数
1 | con.start_transaction([事务隔离级别]) |
数据库连接池¶
1 | import mysql.connector.pooling |
性能优化¶
当大量数据需要插入时,可以使用executemany()方法。其效果可以有效的优化自己每次使用execute()方法所带来的性能损耗,尤其是当数据库中有10万条以上的数据后。
Tip¶
SQL注入¶
由于SQL是解释型语言,存在SQL注入问题。
此时可以利用SQL预编译机制抵御注入攻击。
SQL预编译机制:数据库提前将SQL语句编译成二进制,避免了词法分析,这样反复执行同一条SQL效率提升。
SQL语句编译的过程中,关键字已经被解析过了,所以向编译后的SQL语句传入参数,都被当作字符串处理,数据库不会解析其中注入的SQL语句。
使用方式如下:
1 | sql="select * from user where username=%s and password=%s" |