python数据库连接代码_python 连接各类主流数据库的实例代码

# coding=utf-8

# http://www.runoob.com/sqlite/sqlite-python.html

import sqlite3

import traceback

try:

# 如果表不存在,就创建

with sqlite3.connect('test.db') as conn:

print("Opened database successfully")

# 删除表

conn.execute("DROP TABLE IF EXISTS COMPANY")

# 创建表

sql = """

CREATE TABLE IF NOT EXISTS COMPANY

(ID INTEGER PRIMARY KEY AUTOINCREMENT,

NAME TEXT NOT NULL,

AGE INT NOT NULL,

ADDRESS CHAR(50),

SALARY REAL);

"""

conn.execute(sql)

print("create table successfully")

# 添加数据

conn.executemany("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY) VALUES (?, ?, ?, ? )",

[('Paul', 32, 'California', 20000.00),

('Allen', 25, 'Texas', 15000.00),

('Teddy', 23, 'Norway', 20000.00),

('Mark', 25, 'Rich-Mond ', 65000.00),

('David', 27, 'Texas', 85000.00),

('Kim', 22, 'South-Hall', 45000.00),

('James', 24, 'Houston', 10000.00)])

# conn.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY)

# VALUES ( 'Paul', 32, 'California', 20000.00 )")

#

# conn.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY)

# VALUES ('Allen', 25, 'Texas', 15000.00 )")

#

# conn.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY)

# VALUES ('Teddy', 23, 'Norway', 20000.00 )")

#

# conn.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY)

# VALUES ( 'Mark', 25, 'Rich-Mond ', 65000.00 )")

#

# conn.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY)

# VALUES ( 'David', 27, 'Texas', 85000.00 )");

#

# conn.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY)

# VALUES ( 'Kim', 22, 'South-Hall', 45000.00 )")

#

# conn.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY)

# VALUES ( 'James', 24, 'Houston', 10000.00 )")

# 提交,否则重新运行程序时,表中无数据

conn.commit()

print("insert successfully")

# 查询表

sql = """

select id,NAME,AGE,ADDRESS,SALARY FROM COMPANY

"""

result = conn.execute(sql)

for row in result:

print("-" * 50) # 输出50个-,作为分界线

print("%-10s %s" % ("id", row[0])) # 字段名固定10位宽度,并且左对齐

print("%-10s %s" % ("name", row[1]))

print("%-10s %s" % ("age", row[2]))

print("%-10s %s" % ("address", row[3]))

print("%-10s %.2f" % ("salary", row[4]))

# or

# print('{:10s} {:.2f}'.format("salary", row[4]))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值