-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrunC.R
37 lines (22 loc) · 872 Bytes
/
runC.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
library("RSQLite")
library("RSQLiteUDF")
db = dbConnect(SQLite(), "foo")
sqliteExtension(db)
sqliteExtension(db, system.file("libs", "RSQLiteUDF.so", package = "RSQLiteUDF"))
a = getNativeSymbolInfo("sqlite3_api", "RSQLiteUDF")$address
#sqliteExtension(db, "fib.so")
dll = dyn.load("fib.so")
.Call(dll$R_setSQLite3API, a)
p = getNativeSymbolInfo("sqlTen")
createSQLFunction(db, p, "ten", nargs = 0L)
d = dbGetQuery(db, "SELECT ten()")
########
p = getNativeSymbolInfo("sqlFib3")
createSQLFunction(db, "sqlFib3", "fib3", nargs = 1L)
d = dbGetQuery(db, "SELECT x, fib3(x) FROM mytable")
#################
createSQLFunction(db, "myfloorFunc", "myfloor", nargs = 1L)
d = dbGetQuery(db, "SELECT myfloor(y) FROM mytable LIMIT 5")
p = getNativeSymbolInfo("sqlFib2")
createSQLFunction(db, p, "fib2", nargs = 1L)
d = dbGetQuery(db, "SELECT x, fib2(x) FROM mytable")