当前位置: 首页 > 编程笔记 >

浅谈MySQL在cmd和python下的常用操作

施令雪
2023-03-14
本文向大家介绍浅谈MySQL在cmd和python下的常用操作,包括了浅谈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 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)

以上这篇浅谈MySQL在cmd和python下的常用操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍浅谈python中列表、字符串、字典的常用操作,包括了浅谈python中列表、字符串、字典的常用操作的使用技巧和注意事项,需要的朋友参考一下 列表操作如此下: a = ["haha","xixi","baba"] 增:a.append[gg] a.insert[1,gg] 在下标为1的地方,新增 gg 删:a.remove(haha) 删除列表中从左往右,第一个匹配到的 haha d

  • 本文向大家介绍浅谈numpy库的常用基本操作方法,包括了浅谈numpy库的常用基本操作方法的使用技巧和注意事项,需要的朋友参考一下 NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推。在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量。比如说,二维数组相当于是一个一维数组,而这个一维数组中每个元素又是一个一维数组。所以这个一维数组就是N

  • 本文向大家介绍浅谈MySQL和mariadb区别,包括了浅谈MySQL和mariadb区别的使用技巧和注意事项,需要的朋友参考一下 MariaDB是MySQL源代码的一个分支,在意识到Oracle会对MySQL许可做什么后分离了出来(MySQL先后被Sun、Oracle收购)。除了作为一个Mysql的“向下替代品”,MariaDB包括的一些新特性使它优于MySQL。 这两个数据库究竟有什么本质的区

  • 本文向大家介绍浅谈MySQL中四种常用存储引擎,包括了浅谈MySQL中四种常用存储引擎的使用技巧和注意事项,需要的朋友参考一下 MySQL常用的四种引擎的介绍 (1):MyISAM存储引擎: 不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表 支持3种不同的存储格式,分别是:静态表;动态表;压缩表 静态表:表中的

  • 本文向大家介绍浅谈stringstream 的.str()正确用法和清空操作,包括了浅谈stringstream 的.str()正确用法和清空操作的使用技巧和注意事项,需要的朋友参考一下 streamstring在调用str()时,会返回临时的string对象。而因为是临时的对象,所以它在整个表达式结束后将会被析构。 如果需要进一步操作string对象,先把其值赋给一个string变量后再操作。

  • 本文向大家介绍浅谈Python中的作用域规则和闭包,包括了浅谈Python中的作用域规则和闭包的使用技巧和注意事项,需要的朋友参考一下 在对Python中的闭包进行简单分析之前,我们先了解一下Python中的作用域规则。关于Python中作用域的详细知识,有很多的博文都进行了介绍。这里我们先从一个简单的例子入手。 Python中的作用域 假设在交互式命令行中定义如下的函数: 上述代码先给a赋值1,