工具链,使使用sql更容易

wsql_sdk的Python项目详细描述


https://travis-ci.org/WebSQL/sdk.svg?branch=masterhttps://coveralls.io/repos/WebSQL/sdk/badge.png?branch=master

使使用sql过程更容易的工具链。

语法

  • include“<;filename>;”-包括指定的文件名、支持的绝对和相对URL。
  • 定义名称<;值>;-指定可以用作$name
  • 定义名称(arg1,…,argn)-可以用作$name(a1,….an)
  • 未定义名称-未定义以前定义的指令
  • if条件表达式-条件表达式
  • select…;–>;通知查询的数组-提示返回多个元素
  • select…;–>;通知查询的object-提示只返回一个元素
  • comment“返回union”-提示,将结果集中的所有对象合并为一个
  • comment“<;表名>;(<;列名列类型>;,…);”-提示,允许通过临时表将参数列表传递给过程

wsql传输:

本地sql之上的扩展。

支架:

#define table_name "mytable"
select * from $table_name;
  • 宏函数
#definequote(a)"a"selectupper(quote(a));
  • 条件
#definea1#ifa==1select*fromt1;#elseselect*fromt2;#endif
  • 包括
#include"common.sql"

wsql代码生成:

生成用于SQL过程的本机代码。 现在支持python3 native和aio。 正在开发中的C++。 必需的WSQL

提示

  • select…;–>;通知查询的数组-提示返回多个元素
  • select…;–>;通知查询的object-提示只返回一个元素
  • comment“返回union”-提示,将结果集中的所有对象合并为一个
  • comment“<;表名>;(<;列名列类型>;,…);”-提示,允许通过临时表将参数列表传递给过程

sql

CREATEPROCEDUREtable1.insert(valueVARCHAR(10))BEGININSERTINTOtable1(value)VALUES(value);SELECTLAST_INSERT_ID()ASid;END

Python3

@coroutinedefinsert(connection,value=None):"""
    insert, table1
    :param value: the value(VARCHAR(10), IN))
    :return (id,)
    """@coroutinedef__query(__connection):__cursor=__connection.cursor()try:yield from__cursor.callproc(b"procedure4",(value,))return(yield from__cursor.fetchall())[0]finally:yield from__cursor.close()try:return(yield fromconnection.execute(__query))exceptErrorase:raisehandle_error(exceptions,e)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
面向批处理的java非阻塞队列   java如何基于HttpComponent获取html内容   java为什么我的程序会显示此错误?   java spring控制器如何处理应用程序/octetstream请求?   尝试将数据插入数据库时出现java常规错误   无法在java多线程处理中维护生产者任务的顺序   java为什么JSON数据无法访问ViewPager?   java获取Maven中特定分支的SVN buildnumber   java客户端无法从服务器接收信息   java等轴测地图绘制,生成   java无法调试ProcessBuilder   java热点JVM阵列分配   在数组中存储“inputdialog”数据的java   saml Java Inflater引发DataFormatException“无效代码长度集”   从集合(爬虫、Jsoup、Java)写入文件