MySQL在cmd和python下的常用操作
时间:2021-07-01 10:21:17
帮助过:8人阅读
# -*- coding: utf-8 -*-
2 #!/usr/bin/env python
3
4 # @Time : 2017/6/4 18:11
5 # @Author : Elijah
6 # @Site :
7 # @File : sql_helper.py
8 # @Software: PyCharm Community Edition
9 import MySQLdb
10
11 class MySqlHelper(object):
12 def __init__(self,**
args):
13 self.ip = args.get(
"IP")
14 self.user = args.get(
"User")
15 self.password = args.get(
"Password")
16 self.tablename = args.get(
"Table")
17 self.port = 3306
18 self.conn = self.conn = MySQLdb.Connect(host=self.ip,user=self.user,passwd=self.password,port=self.port,connect_timeout=5,autocommit=
True)
19 self.cursor =
self.conn.cursor()
20
21 def Close(self):
22 self.cursor.close()
23 self.conn.close()
24 def execute(self,sqlcmd):
25 return self.cursor.execute(sqlcmd)
26 def SetDatabase(self,database):
27 return self.cursor.execute(
"use %s;"%
database)
28 def GetDatabasesCount(self):
29 return self.cursor.execute(
"show databases;")
30 def GetTablesCount(self):
31 return self.cursor.execute(
"show tables;")
32 def GetFetchone(self, table =
None):
33 if not table:
34 table =
self.tablename
35 self.cursor.execute(
"select * from %s;"%
table)
36 return self.cursor.fetchone()
37 def GetFetchmany(self,table=None,size=
0):
38 if not table:
39 table =
self.tablename
40 count = self.cursor.execute(
"select * from %s;"%
table)
41 return self.cursor.fetchmany(size)
42 def GetFetchall(self,table=
None):
43 ‘‘‘
44 :param table: 列表
45 :return:
46 ‘‘‘
47 if not table:
48 table =
self.tablename
49 self.cursor.execute(
"select * from %s;"%
table)
50 return self.cursor.fetchall()
51 def SetInsertdata(self,table=None,keyinfo=None,value=
None):
52 """
53 :param table:
54 :param keyinfo:可以不传此参数,但此时value每一条数据的字段数必须与数据库中的字段数一致。
55 传此参数时,则表示只穿指定字段的字段值。
56 :param value:类型必须为只有一组信息的元组,或者包含多条信息的元组组成的列表
57 :return:
58 """
59 if not table:
60 table =
self.tablename
61 slist =
[]
62 if type(value)==
tuple:
63 valuelen =
value
64 execmany =
False
65 else:
66 valuelen =
value[0]
67 execmany =
True
68 for each
in range(len(valuelen)):
69 slist.append(
"%s")
70 valuecenter =
",".join(slist)
71 if not keyinfo:
72 sqlcmd =
"insert into %s values(%s);"%
(table,valuecenter)
73 else:
74 sqlcmd =
"insert into %s%s values(%s);" %
(table,keyinfo,valuecenter)
75 print(sqlcmd)
76 print(value)
77 if execmany:
78 return self.cursor.executemany(sqlcmd,value)
79 else:
80 return self.cursor.execute(sqlcmd, value)
MySqlHelper
MySQL在cmd和python下的常用操作
标签:code pen roo values arc play create 指定 software