来自SQLite的Julia查询

来自SQLite的Julia查询,julia,Julia,在本教程之后,我创建了一个名为Movies的数据库。在数据库中创建了一个名为movies的表,接下来还添加了一个条目 using SQLite db = SQLite.DB("Movies") SQLite.execute(db,"CREATE TABLE IF NOT EXISTS movies(movie_id REAL,movie_name TEXT, location TEXT)") SQLite.execute(db,"INSERT I

在本教程之后,我创建了一个名为Movies的数据库。在数据库中创建了一个名为movies的表,接下来还添加了一个条目

using SQLite
db = SQLite.DB("Movies")
SQLite.execute(db,"CREATE TABLE IF NOT EXISTS movies(movie_id REAL,movie_name TEXT, location TEXT)")
SQLite.execute(db,"INSERT INTO movies (movie_id,movie_name,location) VALUES(1,'Avengers','USA')")
但是现在当我尝试按如下方式查询条目时

SQLite.Query(db, "SELECT * from movies") 
我得到了这个错误,错误:MethodError:没有与SQLite.Query匹配的方法。::SQLite.DB,::String。
你知道我做错了什么吗?

我不懂SQL,但我认为你想再次使用SQLite.execute而不是SQLite.Query。Query是一个结构而不是函数,并且没有任何文档。我认为你不应该从外表上说这件事。进一步的文件正在编写中

方法错误意味着您正在使用错误的参数调用某些内容。SQLite.Query结构需要以下所有参数:

struct Query
    stmt::Stmt
    status::Base.RefValue{Cint}
    names::Vector{Symbol}
    types::Vector{Type}
    lookup::Dict{Symbol, Int}
end
SQLite.execute函数需要以下形式之一的参数:

  SQLite.execute(db::SQLite.DB, sql, [params])
  SQLite.execute(stmt::SQLite.Stmt, [params])

按照Julia的惯例,函数都是小写的,类型都是大写的。

我不知道SQL,但我认为您希望再次使用SQLite.execute,而不是SQLite.Query。Query是一个结构而不是函数,并且没有任何文档。我认为你不应该从外表上说这件事。进一步的文件正在编写中

方法错误意味着您正在使用错误的参数调用某些内容。SQLite.Query结构需要以下所有参数:

struct Query
    stmt::Stmt
    status::Base.RefValue{Cint}
    names::Vector{Symbol}
    types::Vector{Type}
    lookup::Dict{Symbol, Int}
end
SQLite.execute函数需要以下形式之一的参数:

  SQLite.execute(db::SQLite.DB, sql, [params])
  SQLite.execute(stmt::SQLite.Stmt, [params])

按照Julia的惯例,函数都是小写的,类型都是大写的。

要使用SQLite包加载表

using SQLite
using DataFrames

# Make a connection
db = SQLite.DB("Movies")

# To find out all tables available in schema
tbls = SQLite.tables(db)

# To load a specific table (movies table from Movies.db)
q = "SELECT * FROM movies"
data = SQLite.DBInterface.execute(db,q)

# To get as a dataframe
df = DataFrames.DataFrame(data)

要使用SQLite包加载表

using SQLite
using DataFrames

# Make a connection
db = SQLite.DB("Movies")

# To find out all tables available in schema
tbls = SQLite.tables(db)

# To load a specific table (movies table from Movies.db)
q = "SELECT * FROM movies"
data = SQLite.DBInterface.execute(db,q)

# To get as a dataframe
df = DataFrames.DataFrame(data)