python数据库编程 Mysql实现通讯录

作者:Ugex 时间:2024-01-24 17:53:11 

本文实例为大家分享了Mysql实现通讯录的具体代码,供大家参考,具体内容如下


#-*-code:utf-8-*-
import pymysql
def CreateTable():
hcon=pymysql.connect(host='localhost',user='root',password='lptpwd',database='contract',charset='utf8')
hcur=hcon.cursor()
hcur.execute('drop table if exists contractlist')
ctable='''
create table contractlist
(
ID int(10) primary key,
NAME varchar(20) not null,
TELF char(11) not null,
TELS char(11),
OTHER varchar(50)
)engine=myisam charset=utf8;
'''
hcur.execute(ctable)
hcur.close()
hcon.close()

def AddInfo(hcon,hcur):
id=int(input('please input ID: '))
name=str(input('please input Name: '))
telf=str(input('please input Tel 1: '))
tels=str(input('please input Tel 2: '))
other=str(input('please input other: '))
sql="insert into contractlist(id,name,telf,tels,other) values(%s,%s,%s,%s,%s)"
try:
hcur.execute(sql,(id,name,telf,tels,other))
hcon.commit()
except:
hcon.rollback()

def DeleteInfo(hcon,hcur):
SelectInfo(hcon,hcur)
did=int(input('please input id of delete: '))
sql="delete from contractlist where id=%s"
try:
hcur.execute(sql,(did,))
hcon.commit()
except:
hcon.rollback()

def UpdateInfo(hcon,hcur):
SelectInfo(hcon,hcur)
did=int(input('please input id of update: '))

sqlname="update contractlist set name=%s where id=%s"
name=str(input('please input Name: '))
try:
hcur.execute(sqlname,(name,did))
hcon.commit()
except:
hcon.rollback()

sqltelf="update contractlist set telf=%s where id=%s"
telf=str(input('please input Tel 1: '))
try:
hcur.execute(sqltelf,(telf,did))
hcon.commit()
except:
hcon.rollback()

sqltels="update contractlist set tels=%s where id=%s"
tels=str(input('please input Tel 2: '))
try:
hcur.execute(sqltels,(tels,did))
hcon.commit()
except:
hcon.rollback()

sqlothers="update contractlist set other=%s where id=%s"
other=str(input('please input other: '))
try:
hcur.execute(sqlothers,(other,did))
hcon.commit()
except:
hcon.rollback()

def SelectInfo(hcon,hcur):
hcur.execute("select * from contractlist")
result=hcur.fetchall()
ptitle=('ID','Name','Tel 1','Tel 2','Other')
print(ptitle)
for findex in result:
print(findex)

print('')

def Meau():
print('1.diaplay')
print('2.add')
print('3.update')
print('4.delete')
print('5.cls')
print('0.exit')
sel=9
while(sel>5 or sel<0):
sel=int(input('please choice: '))
return sel

def main():
#CreateTable()
hcon=pymysql.connect(host='localhost',user='root',password='ltb12315',database='contract',charset='utf8')
hcur=hcon.cursor()
while(True):
sel=Meau()
if(sel==1):
SelectInfo(hcon,hcur)
elif(sel==2):
AddInfo(hcon,hcur)
elif(sel==3):
UpdateInfo(hcon,hcur)
elif(sel==4):
DeleteInfo(hcon,hcur)
elif(sel==5):
os.system('cls')
else:
break
print('-------------------------')
hcur.close()
hcon.close()

if __name__=="__main__":
main()

来源:https://blog.csdn.net/Ugex_Savelar/article/details/103056800

标签:python,mysql,通讯录
0
投稿

猜你喜欢

  • vue的hash值原理也是table切换实例代码

    2023-07-02 16:54:52
  • Python 中的range(),以及列表切片方法

    2022-04-22 16:22:53
  • Python fileinput模块使用实例

    2022-02-28 12:02:19
  • 一个简单的北京2008奥运倒计时代码

    2008-03-16 14:15:00
  • mysql优化配置参数

    2024-01-27 11:25:35
  • MySQL多表查询的具体实例

    2024-01-22 00:13:20
  • JavaScript实现日期格式化的方法汇总

    2024-04-10 16:19:04
  • JSP连接MySQL数据库详细步骤

    2024-01-25 07:03:49
  • Python中的引用和拷贝实例解析

    2022-02-26 00:59:13
  • PyQt5+Caffe+Opencv搭建人脸识别登录界面

    2022-06-18 01:42:25
  • 用Dreamweaver MX设计各种网页鼠标样式

    2008-10-04 10:18:00
  • sql2005与sql200数据导入导出

    2009-03-13 13:16:00
  • Android中Okhttp3实现上传多张图片同时传递参数

    2024-05-10 14:06:20
  • Golang标准库syscall详解(什么是系统调用)

    2024-05-28 15:23:35
  • Python利用AutoGrad实现自动计算函数斜率和梯度

    2023-09-27 22:47:59
  • 网页中的平衡、对比、连贯和留白

    2008-11-24 12:11:00
  • Python简单计算文件MD5值的方法示例

    2023-06-07 06:06:42
  • php中防止SQL注入的最佳解决方法

    2023-08-19 21:52:20
  • Python3打包exe代码2种方法实例解析

    2022-03-31 14:36:30
  • MySql添加新用户及为用户创建数据库和给用户分配权限方法介绍

    2024-01-29 01:03:10
  • asp之家 网络编程 m.aspxhome.com