• Python-数据库


     sqlite数据库

    sqlite数据库
    import sqlite3 #导入模块
    con= sqlite3.connect('mrsoft.db')#创建连接对象 connect函数需要一个参数 就是数据库名称
    cur = con.cursor() #创建游标对象
    
    
    ###################################################3
    #执行sql语句 游标.execute(命令)
    cur.execute('CREATE TABLE user(id int(10) primary key ,name varchar(10) not null)')
    #解释 CREATE TABLE 表名(列名1 字段类型 字段说明,列名2 x x)不同列名之间用,分隔 同一列名之间用空格稍稍分开
    
    #增加 'INSERT INTO 表名(列名1,列名2) VALUES(值1,值2)'
    cur.execute('INSERT INTO user(id,name) VALUES('1','TIANT')')
    cur.execute('INSERT INTO user(id,name) VALUES('2','TICA')')
    #or增加
    sql = 'INSERT INTO user(id,name) VALUES('3','sdc')'
    cur.execute(sql) #执行sql语句 上面是直接执行 下面是设了个参数,再把参数赋给execute
    
    sql = 'INSERT INTO user(id,name) VALUES(?,?)'#使用占位符
    cur.execute(sql,(3,'sde'))#使用元祖来传递给上面的values
    
    sql='INSERT INTO user(id,name) VALUES(?,?)'
    data = [('3','andy'),('4','sd')]
    cur.executemany(sql,data)
    
    #查询
    cur.execute('SELECT * FROM user WHERE id = 1 ') #ID=1 不是双等号啊兄弟
    #SELECT 列名1,列名2,列名3  FROM 表名 WHERE 查询条件
    sq1= 'SELECT * FROM user'
    execute(sql)
    #获取游标的查询结果
    print(cur.fetchone) #游标.fetchone()结果集的下一条记录
    print(cur.fetchmany(n))#游标.fetchmany(n) #n条记录
    print(cur.fetchall())#游标.fetchall()所有记录 结果返回字典
    
    #更新
    cur.execute('UPDATE user SET 列名=值1 WHERE 条件表达式')
    cur.execute('UPDATE user SET c1=36 WHERE cname="操作系统" ')
    
    #删除语句 删除时要加删除条件
    cur.execute('DELETE FROM 表名 WHERE 条件') #不加的话那就是全删了
    #########################################################################
    '''总之就是
    创建 游标.execute('CREATE TABLE 表名(列名 字段类型 说明, 列名2)')
    插入 游标.execute('INERT INTO 表名(列名1,列名2) VALUES(对应的值 会一一对应的)')
    删除 游标.execute('DELETE FROM 表名 WHERE 条件')
    更新 游标.execute('UPDATE 表名 SET 列=值 WHERE 条件 ')
    查询 游标.execute('SELECT */列名 FROM 表名 WHERE 条件 ')
    输出查询的结果 游标.fetchone() /.fetchmany(n)/fetchall()
    '''
    
    cur.close() #关闭游标
    con.commit() #提交事务 查询语句不需要此条语句
    con.close() #关闭链接

    mysql

    import pymysql #调用pymysql模块
    #调用connect函数生产connecion连接对象
    co =pymysql.connect('localhost','root','root','test.db',charset='utf8')#函数参数:主机名,用户名,密码,连接的数据库名
    #调用cursor()方法 创建cursor对象
    cur = co.cursor()
    
    
    #执行sql语句
    cur.execute('CREATE TABLE 表名(列名 数据类型 字段属性)')#创建表
    cur.execute('ALTER TABLE 表名 ADD 列名 数据类型 列属性')#向表中添加列
    cur.execute('ALTER TABLE 表名 MODIFY 列名 新数据类型 新列属性')#修改列属性
    cur.execute('ALTER TABLE 表名 DROP COLUMN 列名')#删除列
    cur.execute('INSERT INTO 表名(列名) VALUES(值)')#插入数据
    cur.execute('UPDATE 表名 SET 列名=值 WHERE 表达式' )#修改数据
    cur.execute('DELETE FROM 表名 WHERE 表达式')#删除数据
    #关闭
    cur.close()
    co.close()
    
    
    #删除表
    cur.execute('DROP DATABASES 数据库名')
    #显示所有数据库
    cur.execute('SHOW DATABASES')
  • 相关阅读:
    KafkaSpout 重复消费问题解决
    FastJson 输出值 首字母大小写问题
    Kafka0.7运行时报错 kafka/javaapi/consumer/ConsumerConnector : Unsupported major.minor version 51.0 解决
    Zookeeper原理与Curator使用
    Strom 消息处理机制 中英对照翻译 (Storm如何保证消息被完全处理)
    Mac安装 Storm 小结
    linux下实现ftp上传文件
    Task 0.0 in stage 1.0 (TID 1) had a not serializable result: org.apache.hadoop.hbase.client.Result
    Spark操作HBase
    maven-pom-project文件报错
  • 原文地址:https://www.cnblogs.com/yundong333/p/11117450.html
Copyright © 2020-2023  润新知