【问题标题】:How to insert records in sqlite3 table (on rails), with sql code?如何使用sql代码在sqlite3表(在rails上)中插入记录?
【发布时间】:2013-03-19 15:29:09
【问题描述】:

我在互联网上找到了一个 SQL 文件,其中包含所有具有这种结构的城市:

INSERT INTO cities 
SET id=1,city='name_of_city',zip_code=XXXXX,province='XX',region='name_of_region';

所以,我在 Rails (sqlite3) 中创建了一个具有相同结构的“城市”表:

Cities : Id, city(char), zip_code, province, region.

现在,我如何使用这个带有 rails 的 SQL 文件来填充我的表? 有没有工具可以为 sqlite3 数据库转换“SQL INSERT RECORD”?

谢谢

编辑(一些 SQL 文件行)

INSERT INTO cities SET id=1,city='Abano Terme Bagni',zip_code=35031,province='PD',region='Veneto';
INSERT INTO cities SET id=2,city='Abatemarco',zip_code=84040,province='SA',region='Campania';
INSERT INTO cities SET id=3,city='Abazia Di Sulmona',zip_code=67030,province='AQ',region='Abruzzo';
INSERT INTO cities SET id=4,city='Abbadia Alpina',zip_code=10060,province='TO',region='Piemonte';

【问题讨论】:

  • 不确定我是否理解,但您是否正在寻找像 ActiveRecord 这样的 ORM?
  • 不,他正在寻找将文件中的所有数据导入他的数据库的方法。您是否考虑过使用正则表达式并通过 Ruby 对象将其导入数据库?你的数据是什么样子的,你能举出前 2 行或 3 行的例子吗
  • @SrikanthVenugopalan 我在 Rails 中创建了一个 Cities 表,现在我想在其中插入所有意大利城市,但在互联网上我只找到了所有城市的 MYSQL 文件。我可以转换 MYSQL 语句来插入 SQLITE3 数据库中的所有城市吗?
  • @Zippie 我还想过一个脚本来更改 sql 文件,然后将结果放在表中,但不知道从哪里开始......我用一些 SQL 行编辑了我的答案文件。
  • @iRails - 你需要具体。我建议您查找数据而不是脚本,并以 sqlite 格式生成插入。有大量可用的数据集。

标签: sql ruby-on-rails sqlite


【解决方案1】:

我认为您可以生成 mysql 数据库,然后使用像 seed_dumpyaml_db 这样的转储 gem,您可以将所有数据用于 Rails 应用程序的任何数据库引擎。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-27
    • 2017-04-02
    • 2011-05-09
    • 1970-01-01
    相关资源
    最近更新 更多