RMI远程接口。
CSMAR目前只支持RMI接口。
CSMAR是一个经济金融研究数据库。该数据库是国泰安从学术研究的需求出发,借鉴芝加哥大学CRSP、标准普尔Compustat、纽约交易所TAQ、IBES、Thomson等国际知名数据库的专业标准,并结合中国实际国情开发的经济金融型数据库。经过17年的不断积累和完善,CSMAR数据库已涵盖因子研究、人物特征、绿色经济、股票、公司等18大系列,包含130多个数据库、4000多张表、4万多个字段。
虽然 Python 需要为 *** 作不同的数据库使用不同的模块,但不同的数据库模块并非没有规律可循,因为它们基本都遵守 Python 制订的 DB API 协议,目前该协议的最新版本是 20,因此这些数据库模块有很多 *** 作其实都是相同的。下面先介绍不同数据库模块之间的通用内容。
全局变量
Python 推荐支持 DB API 20 的数据库模块都应该提供如下 3 个全局变量:
apilevel:该全局变量显示数据库模块的 API 版本号。对于支持 DB API 20 版本的数据库模块来说,该变量值通常就是 20。如果这个变量不存在,则可能该数据库模块暂时不支持 DB API 20。读者应该考虑选择使用支持该数据库的其他数据库模块。
threadsafety:该全局变量指定数据库模块的线程安全等级,该等级值为 0~3 ,其中 3 代表该模块完全是线程安全的;1 表示该模块具有部分线程安全性,线程可以共享该模块,但不能共享连接;0 则表示线程完全不能共享该模块。
paramstyle:该全局变量指定当 SQL 语句需要参数时,可以使用哪种风格的参数。该变量可能返回如下变量值:
format:表示在 SQL 语句中使用 Python 标准的格式化字符串代表参数。例如,在程序中需要参数的地方使用 %s,接下来程序即可为这些参数指定参数值。
pyformat:表示在 SQL 语句中使用扩展的格式代码代表参数。比如使用 %(name),这样即可使用包含 key 为 name 的字典为该参数指定参数值。
qmark:表示在 SQL 语句中使用问号()代表参数。在 SQL 语句中有几个参数,全部用问号代替。
numeric:表示在 SQL 语句中使用数字占位符(:N)代表参数。例如:1 代表一个参数,:2 也表示一个参数,这些数字相当于参数名,因此它们不一定需要连续。
named:表示在 SQL 语句中使用命名占位符(:name)代表参数。例如 :name 代表一个参数,:age 也表示一个参数。
通过查阅这些全局变量,即可大致了解该数据库 API 模块的对外的编程风格,至于该模块内部的实现细节,完全由该模块实现者负责提供,通常不需要开发者关心。
数据库 API 的核心类
遵守 DB API 20 协议的数据库模块通常会提供一个 connect() 函数,该函数用于连接数据库,并返回数据库连接对象。
数据库连接对象通常会具有如下方法和属性:
cursor(factory=Cursor):打开游标。
commit():提交事务。
rollback():回滚事务。
close():关闭数据库连接。
isolation_level:返回或设置数据库连接中事务的隔离级别。
in_transaction:判断当前是否处于事务中。
上面第一个方法可以返回一个游标对象,游标对象是 Python DB API 的核心对象,该对象主要用于执行各种 SQL 语句,包括 DDL、DML、select 查询语句等。使用游标执行不同的 SQL 语句返回不同的数据。
游标对象通常会具有如下方法和属性:
execute(sql[, parameters]):执行 SQL 语句。parameters 参数用于为 SQL 语句中的参数指定值。
executemany(sql, seq_of_parameters):重复执行 SQL 语句。可以通过 seq_of_parameters 序列为 SQL 语句中的参数指定值,该序列有多少个元素,SQL 语句被执行多少次。
executescript(sql_script):这不是 DB API 20 的标准方法。该方法可以直接执行包含多条 SQL 语句的 SQL 脚本。
fetchone():获取查询结果集的下一行。如果没有下一行,则返回 None。
fetchmany(size=cursorarraysize):返回查询结果集的下 N 行组成的列表。如果没有更多的数据行,则返回空列表。
fetchall():返回查询结果集的全部行组成的列表。
close():关闭游标。
rowcount:该只读属性返回受 SQL 语句影响的行数。对于 executemany() 方法,该方法所修改的记录条数也可通过该属性获取。
lastrowid:该只读属性可获取最后修改行的 rowid。
arraysize:用于设置或获取 fetchmany() 默认获取的记录条数,该属性默认为 1。有些数据库模块没有该属性。
description:该只读属性可获取最后一次查询返回的所有列的信息。
connection:该只读属性返回创建游标的数据库连接对象。有些数据库模块没有该属性。
总结来看,Python 的 DB API 20 由一个 connect() 开始,一共涉及数据库连接和游标两个核心 API。它们的分工如下:
数据库连接:用于获取游标、控制事务。
游标:执行各种 SQL 语句。
掌握了上面这些 API 之后,接下来可以大致归纳出 Python DB API 20 的编程步骤。
*** 作数据库的基本流程
使用 Python DB API 20 *** 作数据库的基本流程如下:
调用 connect() 方法打开数据库连接,该方法返回数据库连接对象。
通过数据库连接对象打开游标。
使用游标执行 SQL 语句(包括 DDL、DML、select 查询语句等)。如果执行的是查询语句,则处理查询数据。
关闭游标。
关闭数据库连接。
下图显示了使用 Python DB API 20 *** 作数据库的基本流程。
以soapUI自带的sample project为例,学习利用DataSource进行login --》search(循环)--》logout
DataSource 的类型有:Data Connection/ Grid / File/ XML /groovy /excel /directory/JDBC
为了让DataSource能循环起来,还要和DataSource Loop结合,下面分布学习Grid / File /excel /Data Connection
1 创建testcase,添加基础的step:login/ search/ logout
并且在search中对
2 新增step:DataSource
并且新增一个Property:search_string, 选择类型:Grid 新增参数:Item 1 / Item 2 / Item 3 / Item 4
在新参数后,可以运行DataSource中的绿色运行按钮,可以测试一下datasource是否可用(下面有data log查看)
3 新增step:DataSource Loop, 在DataSourceLoop配置对话框中选择datasource step,选择target step
4 在search request中配置相关session id / searchstring
session id的参数设置,就是选择login response产生的session (之前的学习中有介绍过)
searchstring的参数设置类似,这里我们选择在DataSource中添加的search_string
5 以上设置好后,就能运行测试用例了,
通过TestCase log />
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
$json=json_decode($json);
$a=$json->{'b'};
echo $a;//输出结果为1
把json数据拷贝出来放到文本里传上来。或者你自己转换成数组进行 *** 作json_decode($json,true)
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';$json=json_decode($json,true);
echo $json["b"];//输出结果为1
以上就是关于CSMAR数据库目前支持哪些API接口调用全部的内容,包括:CSMAR数据库目前支持哪些API接口调用、Python数据库API(DB API)、接口给了测试api文档数据库怎么执行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)