首頁 >資料庫 >mysql教程 >MySQL在cmd和python下的常用操作解析

MySQL在cmd和python下的常用操作解析

小云云
小云云原創
2018-01-17 09:49:071552瀏覽

本文主要為大家帶來一篇淺談MySQL在cmd和python下的常用操作。小編覺得蠻不錯的,現在就分享給大家,也給大家做個參考。一起跟著小編過來看看吧,希望能幫助大家。

環境配置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 from UserInfo where id=1;

斷開連接:quit

二、python下的操作:

# -*- coding: utf-8 -*-
#!/usr/bin/env python

# @Time  : 2017/6/4 18:11
# @Author : Elijah
# @Site  : 
# @File  : sql_helper.py
# @Software: PyCharm Community Edition
import MySQLdb

class MySqlHelper(object):
  def __init__(self,**args):
    self.ip = args.get("IP")
    self.user = args.get("User")
    self.password = args.get("Password")
    self.tablename = args.get("Table")
    self.port = 3306
    self.conn = self.conn = MySQLdb.Connect(host=self.ip,user=self.user,passwd=self.password,port=self.port,connect_timeout=5,autocommit=True)
    self.cursor = self.conn.cursor()

  def Close(self):
    self.cursor.close()
    self.conn.close()
  def execute(self,sqlcmd):
    return self.cursor.execute(sqlcmd)
  def SetDatabase(self,database):
    return self.cursor.execute("use %s;"%database)
  def GetDatabasesCount(self):
    return self.cursor.execute("show databases;")
  def GetTablesCount(self):
    return self.cursor.execute("show tables;")
  def GetFetchone(self, table = None):
    if not table:
      table = self.tablename
    self.cursor.execute("select * from %s;"%table)
    return self.cursor.fetchone()
  def GetFetchmany(self,table=None,size=0):
    if not table:
      table = self.tablename
    count = self.cursor.execute("select * from %s;"%table)
    return self.cursor.fetchmany(size)
  def GetFetchall(self,table=None):
    '''
    :param table: 列表
    :return:
    '''
    if not table:
      table = self.tablename
    self.cursor.execute("select * from %s;"%table)
    return self.cursor.fetchall()
  def SetInsertdata(self,table=None,keyinfo=None,value=None):
    """
    :param table:
    :param keyinfo:可以不传此参数,但此时value每一条数据的字段数必须与数据库中的字段数一致。
            传此参数时,则表示只穿指定字段的字段值。
    :param value:类型必须为只有一组信息的元组,或者包含多条信息的元组组成的列表
    :return:
    """
    if not table:
      table = self.tablename
    slist = []
    if type(value)==tuple:
      valuelen = value
      execmany = False
    else:
      valuelen = value[0]
      execmany = True
    for each in range(len(valuelen)):
      slist.append("%s")
    valuecenter = ",".join(slist)
    if not keyinfo:
      sqlcmd = "insert into %s values(%s);"%(table,valuecenter)
    else:
      sqlcmd = "insert into %s%s values(%s);" % (table,keyinfo,valuecenter)
    print(sqlcmd)
    print(value)
    if execmany:
      return self.cursor.executemany(sqlcmd,value)
    else:
      return self.cursor.execute(sqlcmd, value)

相關推薦:

#如何利用CMD連接本機mysql資料庫

如何登入mysql以及cmd如何連接mysql資料庫?

php 中執行cmd指令的方法

以上是MySQL在cmd和python下的常用操作解析的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn