ホームページ >バックエンド開発 >Python チュートリアル >cmd および Python での MySQL の一般的な操作の概要と共有
環境構成1:mysqlをインストールし、mysqlのbinディレクトリを環境変数に追加します
環境構成2:PythonでMySQL-Pythonをインストールします
ご自身のオペレーティングシステムに合わせてダウンロードしてインストールしてください。それ以外の場合は、C++コンパイル9.0、 import _mysql がレポートされます
Windows 10 64 ビット オペレーティング システムの場合、http://www.lfd.uci.edu/~gohlke/pythonlibs/ で MySQL-Python パッケージをダウンロードしてインストールできます。 Windows および Linux での whl と tar.gz の詳細については、以前の記事を参照してください
1. cmd コマンドでの操作:
mysql に接続します: mysql -u root -p
すべてのデータベースを表示: データベースを表示
テストを作成します。データベース: データベース テストを作成します。
データベースを削除します。データベース テストを削除します。 id int(5) NOT NULL auto_increment,username varchar( 10)、password varchar(20) NOT NULL, PRIMARY KEY(id));
テーブルの削除:drop table UserInfo;
データが存在するかどうかの確認: select * from UserInfo where name like 'elijahxb';
データの追加: UserInfo(username,password) value('eljiahxb','123456');
データの確認: select * from UserInfo = 'Zus' where id=1; update UserInfo set username='Zus';
データの削除: delete from UserInfo; delete from UserInfo where id=1;
切断: quit
2. Python での操作:
1 # -*- 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 MySQLdb10 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 = 330618 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.tablename35 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.tablename40 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.tablename49 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.tablename61 slist = []62 if type(value)==tuple:63 valuelen = value64 execmany = False65 else:66 valuelen = value[0]67 execmany = True68 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
以上がcmd および Python での MySQL の一般的な操作の概要と共有の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。