zoukankan      html  css  js  c++  java
  • python.sqlite3 简单操作

    import sqlite3
    
    def sqlite_basic():
        # Connect to db
        conn = sqlite3.connect('test.db')
        # create cursor
        c = conn.cursor()
        # Create table
        c.execute('''
                  create table if not exists stocks
                  (date text, trans text, symbol text,
                  qty real, price real)
                  '''
                 )
        # Insert a row of data
        c.execute('''
                  insert into stocks
                  values ('2006-01-05','BUY','REHT',100,35.14)
                  '''
                 )
        # query the table
        rows  = c.execute("select * from stocks")
        # print the table
        for row in rows:
          print(row)
        # delete the row
        c.execute("delete from stocks where symbol=='REHT'")
        # Save (commit) the changes
        conn.commit()
        # Close the connection
        conn.close()
        
    def sqlite_adv():
        conn = sqlite3.connect('test2.db')
        c = conn.cursor()
        c.execute('''
                  create table if not exists employee
                  (id text, name text, age inteage)
                  ''')
        # insert many rows
        for t in [('1', 'itech', 10),
                  ('2', 'jason', 10),
                  ('3', 'jack', 30),
                 ]:
            c.execute('insert into employee values (?,?,?)', t)
        # create index
        create_index = 'CREATE INDEX IF NOT EXISTS idx_id ON employee (id);'
        c.execute(create_index)
        # more secure
        t = ('jason',)
        c.execute('select * from employee where name=?', t)
        # fetch query result
        for row in c.fetchall():
          print(row)
        conn.commit()
        conn.close()
        
    def sqlite_adv2():
        # memory db
        con = sqlite3.connect(":memory:")
        cur = con.cursor()
        # execute sql 
        cur.executescript('''
        create table book(
            title,
            author,
            published
        );
        insert into book(title, author, published)
        values (
            'AAA book',
            'Douglas Adams',
    
        );
        ''')
        rows = cur.execute("select * from book")
        for row in rows:
          print("title:" + row[0])
          print("author:" + row[1])
          print("published:" + str(row[2]))
          
    def sqlite_adv3():
        import datetime
    
        # Converting SQLite values to custom Python types
        # Default adapters and converters for datetime and timestamp
        con = sqlite3.connect(":memory:", detect_types=sqlite3.PARSE_DECLTYPES|sqlite3.PARSE_COLNAMES)
        cur = con.cursor()
        cur.execute("create table test(d date, ts timestamp)")
    
        today = datetime.date.today()
        now = datetime.datetime.now()
    
        cur.execute("insert into test(d, ts) values (?, ?)", (today, now))
        cur.execute("select d, ts from test")
        row = cur.fetchone()
        print today, "=>", row[0], type(row[0])
        print now, "=>", row[1], type(row[1])
    
        cur.execute('select current_date as "d [date]", current_timestamp as "ts [timestamp]" from test')
        row = cur.fetchone()
        print "current_date", row[0], type(row[0])
        print "current_timestamp", row[1], type(row[1])
    
    
    
  • 相关阅读:
    Linux下套接字具体解释(九)---poll模式下的IO多路复用server
    【零基础学习iOS开发】【02-C语言】08-基本运算
    用python合并N个不同字符集编码的sql文件的实践
    小木虫emuch遭封禁,新域名muchong.com尚可用
    DB2中编目本机其中数据库的方法
    php socket 处理只是来数据流,该怎样避免(好像是堵塞了)
    Submission Details [leetcode] 算法的改进
    Qt Installer Framework的学习
    CI如何在子目录下可以设置默认控制器
    php CI 实战教程:如何去掉index.php目录
  • 原文地址:https://www.cnblogs.com/UnGeek/p/2788239.html
Copyright © 2011-2022 走看看