我正在使用SQLite中的数据库,并将一堆csv文件导入到我的数据库中。不幸的是,据我所知无法在导入期间添加主键,因此我正在使用一种解决方法,在该方法中,我读取csv文件并使用Pandas的#include <iostream>
#include <cstddef>
int* find(int target, int* start, int* stop)
{
while (start < stop)
{
if (*start == target)
{
return start;
}
++start;
}
return nullptr;
}
int main()
{
int someArray[] = {3,10,19,7,3,45,123,4,9,89};
int *start = &someArray[0];
int *stop = &someArray[10];
std::cout << "Enter a number to find: ";
int num;
std::cin >> num;
int *found = find(num, start, stop);
if (found)
std::cout << "Found at index " << static_cast<ptrdiff_t>(found - start);
else
std::cout << "Not found";
return 0;
}
,然后使用{{1 }}:
to_sql
这很好用,但是我有一堆csv文件,我想通过它们executescript
并将它们全部循环导入。我的问题是,为了做到这一点,我需要找出一种将表和列的名称获取到函数中的SQL脚本中的方法。该功能可以在将表导入数据库时使用,也可以在之后使用,
任何有建议的人,都将受到欢迎!
答案 0 :(得分:0)
如果可以从csv或其他来源解析表名和列名,则可以在将查询传递给执行功能之前进行查询。
示例:
table_name="P_data"
query_template="SELECT * FROM {0}"
final_query=query_template.format(table_name)
,然后您可以将final_query传递给执行。我喜欢通过模板进行最终查询,但是您可以直接执行。
query_template="SELECT * FROM {0}".format(table_name)"
希望它会对您有所帮助。