python开辟_python操纵mysql数据库

    添加时间:2013-8-9 点击量:

    若是你还没有筹办好开辟景象,你不妨花上一小点时候去看看:python开辟_mysqldb安装


    本篇blog是有关python操纵mysql数据的相干内容。


    我做了一个demo:


    先看运行结果:



    mysql中景象



    ======================================================


    代码项目组:


    ======================================================



      1  -- coding: utf-8 --
    
    2 python operate mysql database
    3 import MySQLdb
    4
    5 数据库名称
    6 DATABASE_NAME =
    7 host = localhost or 172.0.0.1
    8 HOST =
    9 端标语
    10 PORT =
    11 用户名称
    12 USER_NAME =
    13 数据库暗码
    14 PASSWORD =
    15 数据库编码
    16 CHAR_SET =
    17
    18 初始化参数
    19 def init():
    20 global DATABASE_NAME
    21 DATABASE_NAME = test
    22 global HOST
    23 HOST = localhost
    24 global PORT
    25 PORT = 3306
    26 global USER_NAME
    27 USER_NAME = root
    28 global PASSWORD
    29 PASSWORD = root
    30 global CHAR_SET
    31 CHAR_SET = utf8
    32
    33 获取数据库连接
    34 def get_conn():
    35 init()
    36 return MySQLdb.connect(host = HOST, user = USER_NAME, passwd = PASSWORD, db = DATABASE_NAME, charset = CHAR_SET)
    37
    38 获取cursor
    39 def get_cursor(conn):
    40 return conn.cursor()
    41
    42 封闭连接
    43 def conn_close(conn):
    44 if conn != None:
    45 conn.close()
    46
    47 封闭cursor
    48 def cursor_close(cursor):
    49 if cursor != None:
    50 cursor.close()
    51
    52 封闭所有
    53 def close(cursor, conn):
    54 cursor_close(cursor)
    55 conn_close(conn)
    56
    57 创建表
    58 def create_table():
    59 sql =
    60 CREATE TABLE `student` (
    61 `id` int(11) NOT NULL,
    62 `name` varchar(20) NOT NULL,
    63 `age` int(11) DEFAULT NULL,
    64 PRIMARY KEY (`id`),
    65 UNIQUE KEY `name` (`name`)
    66 ) ENGINE=InnoDB DEFAULT CHARSET=utf8
    67
    68 conn = get_conn()
    69 cursor = get_cursor(conn)
    70 result = cursor.execute(sql)
    71 conn.commit()
    72 close(cursor, conn)
    73 return result
    74
    75 查询表信息
    76 def query_table(table_name):
    77 if table_name != :
    78 sql = + table_name
    79 conn = get_conn()
    80 cursor = get_cursor(conn)
    81 result = cursor.execute(sql)
    82 for row in cursor.fetchall():
    83 print(row)
    84 for r in row: #轮回每一条数据
    85 print(r)
    86 close(cursor, conn)
    87 else:
    88 printtable name is empty!
    89
    90 插入数据
    91 def _table():
    92 sql = into student(id, name, age) values(%s, %s, %s)
    93 params = (1Hongten_a21
    94 conn = get_conn()
    95 cursor = get_cursor(conn)
    96 result = cursor.execute(sql, params)
    97 conn.commit()
    98 close(cursor, conn)
    99 return result
    100
    101 更新数据
    102 def _table():
    103 sql = student set name = %s where id = 1
    104 params = (HONGTEN
    105 conn = get_conn()
    106 cursor = get_cursor(conn)
    107 result = cursor.execute(sql, params)
    108 conn.commit()
    109 close(cursor, conn)
    110 return result
    111
    112 删除数据
    113 def _data():
    114 sql = student where id = %s
    115 params = (1
    116 conn = get_conn()
    117 cursor = get_cursor(conn)
    118 result = cursor.execute(sql, params)
    119 conn.commit()
    120 close(cursor, conn)
    121 return result
    122
    123 数据库连接信息
    124 def print_info():
    125 print数据库连接信息: + DATABASE_NAME + HOST + PORT + USER_NAME + PASSWORD + CHAR_SET)
    126
    127 打印出数据库中神情况
    128 def show_databases():
    129 sql = show databases
    130 conn = get_conn()
    131 cursor = get_cursor(conn)
    132 result = cursor.execute(sql)
    133 for row in cursor.fetchall():
    134 print(row)
    135
    136 数据库中神情况
    137 def show_tables():
    138 sql = show tables
    139 conn = get_conn()
    140 cursor = get_cursor(conn)
    141 result = cursor.execute(sql)
    142 for row in cursor.fetchall():
    143 print(row)
    144
    145
    146 def main():
    147 show_tables()
    148 创建表
    149 result = create_table()
    150 print(result)
    151 查询表
    152 query_table(student
    153 插入数据
    154 print(_table())
    155 print插入数据后....
    156 query_table(student
    157 更新数据
    158 print(_table())
    159 print更新数据后....
    160 query_table(student
    161 删除数据
    162 _data()
    163 print删除数据后....
    164 query_table(student
    165 print_info()
    166 数据库中神情况
    167 show_tables()
    168
    169
    170 if __name__ == __main__:
    171 main()


    你还可以参考:


    http://drizzlewalk.blog.51cto.com/2203401/448874

    无论对感情还是对生活,“只要甜不要苦”都是任性而孩子气的,因为我们也不完美,我们也会伤害人。正因为我们都不完美,也因为生活从不是事事如意,所以对这些“瑕疵”的收纳才让我们对生活、对他人的爱变得日益真实而具体。—— 汪冰《世界再亏欠你,也要敢于拥抱幸福》
    分享到: