ホームページ  >  記事  >  データベース  >  cmd および Python での MySQL の一般的な操作の分析

cmd および Python での MySQL の一般的な操作の分析

小云云
小云云オリジナル
2018-01-17 09:49:071493ブラウズ

この記事では主に、cmd と Python での MySQL の一般的な操作について簡単に説明します。編集者はこれが非常に良いものだと思ったので、皆さんの参考として今から共有します。編集者をフォローして見てみましょう。皆さんのお役に立てれば幸いです。

環境構成1: mysqlをインストールし、mysqlのbinディレクトリを環境変数に追加します

環境構成2: pythonでMySQL-Pythonをインストールします

ご自身のオペレーティングシステムに合わせてダウンロードしてインストールしてください。それ以外の場合は、C++コンパイル9.0などのエラーが発生します, import _mysql が報告されます

Windows10 64 ビット オペレーティング システムは、http://www.lfd.uci.edu/~gohlke/pythonlibs/ にアクセスして、MySQL-Python パッケージをダウンロードしてインストールします。 Windows と Linux での whl と tar.gz を確認してください。 前の記事

1. cmd コマンドでの操作:

mysql に接続: mysql -u root -p

すべてのデータベースを表示: データベースを表示;

テスト データベースを作成: データベース テストの作成;

データベースの削除: データベース テストの削除;

テスト データベースの使用 (切り替え): 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));

テーブルの削除:テーブル UserInfo の削除;

データが存在するかどうかの判断:select * from UserInfoここで name like 'elijahxb';

データを追加 :UserInfo(username,password)に挿入 value('eljiahxb','123456');

データを確認: select * from UserInfo; select username from UserInfo; ;

データの変更: UserInfo の更新 set username = 'Zus' (id=1); update UserInfo set username='Zus';

データの削除: UserInfo から削除 (id=1);

切断: 終了

2. 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コマンドを実行する方法

以上がcmd および Python での MySQL の一般的な操作の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。