
1、批处理脚本中,要想与用户实行交互,需要用到命令set配合/p参数一起使用。
2、set命令是用来定义变量并赋值的,而使用/p参数后,set并不马上在命令中给变量赋值,而是另起一行,等待用户的输入,并用户的输入内容做为值赋给变量。
3、而且在set/p后,可以加入提示语句,让用户知道,程序正在等待输入。
4、与用户交互,虽然已经实现了用户输入的接收。但还需要对接收到的内容进行处理,这时可以利用if语句来完成。
5、运行后的效果如下,用户输入admin时,显示“输入正确”,否则,显示“请输入正确的用户名”。
6、再来完善一下脚本代码,做一个简单的用户登录判断。主要用到goto语句和if语句,实现python写网页后台实现与数据库交互。
首先我们需要的是一个MySQLdb的库。使用import来进行测试看是否存在,这个样子就是存在的。使用
#! /usr/bin/python
# -*- coding: UTF-8 -*-
来支持中文。
使用import MySQLdb导入库
使用connect进行数据库的连接。db=MySQLdb.connect('127.0.0.1','root','root','myself')
然后使用db.curspor()方法来获取。
最后进行sql语句执行查询命令就可以了。
在 Python 语言环境下我们这样连接数据库。
In [1]: from mysql import connector
In [2]: cnx = connector.connect(host="172.16.192.100",port=3306,user="appuser",password="xxxxxx")
但是连接数据库的背后发生了什么呢?
答案
当我们通过驱动程序(mysql-connector-python,pymysql)连接 MySQL 服务端的时候,就是把连接参数传递给驱动程序,驱动程序再根据参数会发起到 MySQL 服务端的 TCP 连接。当 TCP 连接建立之后驱动程序与服务端之间会按特定的格式和次序交换数据包,数据包的格式和发送次序由 MySQL 协议 规定。MySQL 协议:https://dev.mysql.com/doc/internals/en/client-server-protocol.html整个连接的过程中 MySQL 服务端与驱动程序之间,按如下的次序发送了这些包。
MySQL 服务端向客户端发送一个握手包,包里记录了 MySQL-Server 的版本,默认的授权插件,密码盐值(auth-data)。
2. MySQL 客户端发出 ssl 连接请求包(如果有必要的话)。
3. MySQL 客户端发出握手包的响应包,这个包时记录了用户名,密码加密后的串,客户端属性,等等其它信息。
4. MySQL 服务端发出响应包,这个包里记录了登录是否成功,如果没有成功也会给出错误信息。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)