MySQL在cmd和python下的常用操作匯總分享

來源:互聯網
上載者:User
環境配置1:安裝mysql,環境變數添加mysql的bin目錄

環境配置2:python安裝MySQL-Python

  請根據自身作業系統下載安裝,否則會報c ++ compile 9.0,import _mysql等錯誤

  windows10 64位作業系統可到 http://www.lfd.uci.edu/~gohlke/pythonlibs/ 下載安裝MySQL-Python包,至於whl和tar.gz在windows和Linux下的安裝方法可查看我的上一篇文章

一 、cmd命令下的操作:

  串連mysql:mysql -u root -p

  查看所有資料庫:show databases;

  建立test資料庫:create database test;

  刪除資料庫:drop database test;

  使用(切換至)test資料庫:use test;

  查看當前資料庫下的表:show tables;

  建立UserInfo表:create table UserInfo(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';

  增資料:insert into UserInfo(username,password) value('eljiahxb','123456');

      

  查資料:select * from UserInfo; select id from UserInfo; select username from UserInfo;

  改資料:update UserInfo set username = 'Zus' where id=1; update UserInfo set username='Zus';

  刪資料:delete from UserInfo; delete from UserInfo where id=1;

  中斷連線:quit

二、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
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.