美文网首页
Python操作三大数据库

Python操作三大数据库

作者: orca123456 | 来源:发表于2018-12-28 23:42 被阅读0次

    python MySQL数据库

    //查看数据库列表
    show databases;
    //切换到其中一个
    use baidu;
    //查看表
    show tables;

    SQL语法基础

    DDL(数据定义语句)

    CREATE TABLE/DATABASE
    ALTER TABLE/DATABASE
    DROP TABLE/DATABASE

    DML(数据管理语句)

    INSERT 增
    DELETE 删
    UPDATE 改
    SELECT 查

    创建并使用数据库
    CREATE DATABASE mydatabase;
    USE mydatabase;
    查看已有数据库
    SHOW DATABASES;
    建表语句

    CREATE TABLE `students`(
        `id` INT NOT NUL AUTO_INCREMENT,
        `name` VARCHAR(200) NOT NULL
    );
    

    查询语句

    SELECT select_expr,...
    FROM table_references
    [WHERE where_definition]
    [GROUP BY {col_name|expr|position}]
    [HAVING where_definition]
    [ORDER BY {col_name|expr|position} [ASC|DESC], ...] --排序
    [LIMIT {[offset,] row_count}]

    修改语句

    UPDATE tables_references SET col_name1=expr1[,col_name2=expr2...]
    [WHERE where_definition]

    删除

    DELETE FROM tbl_name
    [WHERE where_definition]

    例子

    CREATE DATABASE `school`;
    USE `school`;
    CREATE TABLE `students`(
        `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
        `name` VARCHAR(20) NOT NULL,
        `nickname` VARCHAR(20) NULL,
        `sex` CHAR(1) NULL,
        `in_time` DATETIME NULL
    ) DEFAULT CHARSET 'UTF8';
    
    INSERT INTO `students`(`name`, `nickname` , `sex`) VALUES
        ('张三','三哥','男'),
        ('张三X','三哥X','男'),
        ('张三X1','三哥X1','男'); 
    SELECT `id`,`name`,`nickname` FROM `students` WHERE `sex`='男' ORDER BY `id` DESC LIMIT 0,2;
    SELECT `id`,`name`,`nickname` FROM `students` WHERE `sex`='男' ORDER BY `id`;
    UPDATE `students` SET `sex`='女',`nickname`='没有昵称' WHERE `sex`='男';
    UPDATE `students` SET `sex`='男',`nickname`='没有昵称' WHERE `id`>6;
    DELETE FROM `students` WHERE `sex`='男';
    

    安装mysql

    MySQL ORM --SQLAlchemy

    pip install SQLAlchemy --安装
    import sqlalchemy --测试
    sqlalchemy.version

    Python MongoDB

    • 安装
      https://www.mongodb.com/download-center/
      msi版如果安装不成功可以下载zip版直接解压

    • 启动
      Windows: mongod.exe --dbpath D:\MongoDB\DB
      Mac: mongod --config /usr/local/etc/mongod.conf
      Linux: sudo service mongod start

    • 连接数据库
      mongo

    • 查看数据库列表
      show dbs

    • 切换到某个数据库(不需要创建)
      use databasename

    • 插入数据

    stu = {
        name:'Jhon',
        age:21
    }
    db.databasename.insert(stu)
    
    • 查询数据
      db.students.find()
    • 修改数据
      stu.name = "Amy"
      db.students.update({name:"Jhon",stu})
    • 删除数据
      db.students.update({name:"Amy"})

    pymongo

    //安装
    pip install pymongo
    文档:http://api.mongodb.com/python/current/
    pypi:https://pypi.python.org/pypi/pymongo
    github:https://github.com/mongodb/mongo-python-driver/
    //连接数据库
    client = MongoClient()
    client = MongoClient('localhost',27017)
    client = MongoClient('mongodb://localhost:27017/')

    MongoDB ODM MongoEngine

    pip install mongoengine

    flask-mongoengine

    pip install flask-mongoengine
    文档:http://flask-mongoengine.readthedocs.io/en/latest/

    在ubantu服务器上安装mongoDB

    https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/

    sudo vi /etc/apt/sources.list.d/mongodb-org-3.4.list //设置下载镜像
    http://mirrors.aliyun.com/mongodb/apt/ubuntu

    cat /var/log/mongodb/mongod.log //检查服务是否开启
    sudo service mongod start //开启服务
    sudo service mongod stop //停止服务
    sudo service mongod restart //重启

    sudo vi /etc/mongod.conf //打开配置文件,修改默认端口
    sudo vi /etc/iptables.up.rules //更改防火墙配置文件中的端口号

    //配置远程连接
    sudo vi /etc/mongod.conf //配置文件,把 bind_ip=127.0.0.1 修改为 0.0.0.0

    Redis数据库

    //官网
    http://redis.io/
    //中文网站
    http://www.redis.cn/
    //windows
    http://github.com/MSOpenTech/redis/releases

    String操作

    set --设置值
    get --获取值
    mset --设置多个键对
    mget --获取多个键对
    append --添加字符串
    del --删除
    incr/decr --增加/减少1

    List列表相关操作

    lpush/rpush --从左/右插入数据
    lrange --获取指定长度的数据
    ltrim --截取一定长度的数据
    lpop/rpop --移除最左/最右的元素并返回
    lpushx/rpushx --key存在的时候才插入数据,不存在时不做任何处理

    Set集合相关操作

    sadd/srem --添加/删除元素
    sismember --判断是否为set的一个元素
    smembers --返回该集合的所有成员
    sdiff --返回一个集合与其他集合的差异
    sinter --返回几个集合的交集
    sunion --返回几个集合的并集

    Hash散列相关操作

    hset/hget --设置/获取散列值
    hmset/hmget --设置/获取多对散列值
    hsetnx --如果散列已经存在,则不设置
    hkeys/hvals --返回所有Keys/Values
    hlen --返回散列包含域(field)的数量
    hdel --删除散列指定的域(field)
    hexists --判断是否存在

    Redis Desktop Manager

    官网:https://redisdesttop.com/
    Github: https://github.com/uglide

    python操作redis

    pip install redis
    import redis

    相关文章

      网友评论

          本文标题:Python操作三大数据库

          本文链接:https://www.haomeiwen.com/subject/ojmylqtx.html