#python-yaspy模块

# 方法

connect( parameters… )

connect()用于创建与数据库连接类的构造函数,相关参数如下表所示。

参数 描述
connname 连接的名称。
dsn 数据源名称(Data Source Name),可包含数据库用户名、密码、数据库URL等信息,完整格式为user/password@url,URL格式如下:
* 单地址连接: host:port
* 多地址连接(primary类型):host:port,host:port,host:portPRIMARY:host:port,host:port,host:port
* 多地址连接(loadBalance类型):LOADBALANCE:host:port,host:port,host:port
参数含义:
* host:数据库所在服务器的网络地址,可以为IPv4地址、IPv6地址或域名。在共享集群部署中,若已配置SCANVIP,还可以使用相应的域名或IP地址。
* port:数据库服务端监听端口,如安装过程中未进行调整,默认为1688。
* primary:表示按顺序优先级连接主节点,驱动将按照指定的监听地址先后顺序对节点进行角色判断并连接首个主节点。
* loadBalance:表示负载均衡连接最优节点,驱动将自动识别出连接数最少的节点并连接。
user 数据库用户名。
可选参数,若dsn中未指定则必选。
password 数据库用户密码。
可选参数,若dsn中未指定则必选。
host host:数据库所在服务器的网络地址,可以为IPv4地址、IPv6地址或域名。在共享集群部署中,若已配置SCANVIP,还可以使用相应的域名或IP地址。
可选参数,若dsn参数中未指定则必选。
如需配置多地址连接,只能通过dsn参数进行配置。
port 数据库端口号
可选参数,默认为1688。

Note:

  • 在共享集群/分布式集群部署中,若已配置SCANVIP,直接使用数据库服务端提供的高可用能力即可,无需额外配置多地址连接。
  • 配置多地址连接共享集群/分布式集群时:
    • 若为单集群部署,驱动会将其所有实例视作主节点。
    • 在主备集群部署中,驱动会将主集群的所有实例视作主节点、备集群的所有实例视作备节点。
  • 多组监听地址连接的故障切换效率低于多个监听地址连接,分组主要用于尽可能保障仅通过第一组地址建立数据库连接,请根据实际需求选择是否分组。

如果user和password中有特殊字符/、@、\,需要使用符号\进行转义,举例如下:

dsn user password host port
192.168.1.2:1688 未指定 未指定 192.168.1.2 1688
sys@192.168.1.2:1688 sys 未指定 192.168.1.2 1688
sys/yasdb_123@192.168.1.2:1688 sys yasdb_123 192.168.1.2 1688
sys/yasdb\@_123@192.168.1.2:1688 sys yasdb@_123 192.168.1.2 1688
sys\//yasdb\@_123@192.168.1.2:1688 sys/ yasdb@_123 192.168.1.2 1688
s\/ys\@\\/yasdb\@_123@192.168.1.2:1688 s/ys@\ yasdb@_123 192.168.1.2 1688

# 属性

Python DB API v2.0规范中要求数据库模块都应该定义如下3个属性变量:

名称 含义 取值
apilevel 模块支持的Python DB API版本 2.0
paramstyle 参数标记的格式风格
目前固定为named,表示格式为where name = :name
named
threadsafety 模块接口支持的线程安全级别
目前固定为2,表示线程可以共享模块和连接但不能共享游标
2

Python开发人员可通过如下代码查看变量的值:

>>> import yaspy
>>> yaspy.threadsafety
2
>>> yaspy.apilevel
'2.0'
>>> yaspy.paramstyle
'named'
pdf-btn 下载文档 copy-btn 复制链接
edit-icon
反馈
coperate-icon
coperate
合作
communication-icon
communicate
交流