小编sam*_*ing的帖子

在SQLite中确定查询的执行时间

我正在创建一个分析和生成查询的程序.我很好奇SQLite中是否存在一个方法,以便我可以查询查询处理所需的时间?我无法以任何方式修改我的安装,因此这种方法需要开箱即用.我在python中编写我的工具,虽然我想我可以使用计时器类来执行时间 - 当我连接到远程计算机时这个方法不起作用(并返回一致的时间.)

python sql sqlite

22
推荐指数
1
解决办法
9286
查看次数

使用PLY解析SQL语句

我知道还有其他工具来解析SQL语句,但我出于教育目的推出了自己的工具.我现在卡住了我的语法..如果你能快速发现错误请告诉我.

SELECT = r'SELECT'
FROM = r'FROM'
COLUMN = TABLE = r'[a-zA-Z]+'
COMMA = r','
STAR = r'\*'
END = r';'
t_ignore = ' ' #ignores spaces

statement : SELECT columns FROM TABLE END

columns : STAR
        | rec_columns

rec_columns : COLUMN
            | rec_columns COMMA COLUMN
Run Code Online (Sandbox Code Playgroud)

当我尝试解析像'SELECT a FROM b;'这样的语句时 我在FROM令牌上遇到语法错误...非常感谢任何帮助!

(编辑)代码:

#!/usr/bin/python
import ply.lex as lex
import ply.yacc as yacc

tokens = (
    'SELECT',
    'FROM',
    'WHERE',
    'TABLE',
    'COLUMN',
    'STAR',
    'COMMA',
    'END',
)

t_SELECT    = r'select|SELECT'
t_FROM      = r'from|FROM'
t_WHERE …
Run Code Online (Sandbox Code Playgroud)

python sql parsing ply context-free-grammar

7
推荐指数
1
解决办法
2031
查看次数

如何调用函数并在haskell中返回不同的值?(没有单子)

我有问题弄清楚这是否可行.任何指针都会很棒

我不确定确切的语法,但有点像

m = 3
d = putStr "d"
f = d ; m
Run Code Online (Sandbox Code Playgroud)

这样它会调用函数d,并返回值m而不是Maybe m

编辑:

我在寻找的更像是这样的?

eval s = s
m = 3
f = (eval s) ; m
Run Code Online (Sandbox Code Playgroud)

haskell functional-programming

2
推荐指数
1
解决办法
201
查看次数