Tag: 数据库

同时检查数据库中多个URL的URL(状态即200,301,404)的最佳方法

这就是我想要完成的事情。 假设我有100,000个url存储在数据库中,我想检查每个URL的http状态并存储该状态。 我希望能够在相当短的时间内同时完成这项工作。 我想知道这样做的最佳方式是什么。 我考虑过与工人/消费者或某种模型一起使用某种队列,但我真的没有足够的经验来了解在这种情况下哪种方法最有效。 想法?

如何通过在Ruby Rails平台中运行sql脚本来种子mysql数据库?

我基本上是Ruby程序员和Ruby Rails的初学者。 在java中,要运行种子数据库ant任务,ant任务执行SQL脚本。 SQL脚本基本上是一组insert语句。 我希望在Ruby Rails平台上运行sql脚本必须有一些相当于ant的任务? 编辑回应尼基塔的回答: 虽然可以使用迁移作为播种数据的方式之一。 但我不想重写编写与sql脚本相对应的迁移类。 所以我需要一些解决方案,我必须只执行sql脚本文件。 我想通过sql代码只通过数据库进行管理。

ODBC与Ruby连接字符串

我正在尝试从Ruby访问Access数据库。 dbh = DBI.connect(‘DBI:ODBC:test’,”,”) 工作,但 dbh = DBI.connect(“DBI:ODBC:driver=Microsoft Access Driver (*.mdb);dbq=H:/test.accdb”) 没有。 我不想在每台机器上设置Access Driver。 为什么第二条线不工作? ODBC驱动程序说我的程序无法识别数据库之类的内容。

是否有Ruby的数据库或数据结构来实现关系矩阵?

我有一个非常简单的数据集 制品 属性 交叉表:产品的属性相关性 red blue modern old fashion (50+ Entries) Jeans myway 0% 100% 30% 30% Polo Shirt 100% 0% 10% 40% (500+ Entries) 在应用程序中,您可以选择红色,蓝色,…等属性,并获取按相关性排序的产品。 存储数据的最佳方法是什么,ruby有一个很好的数据结构(库)吗? (不要告诉我如何使用传统的3表sql和活动记录来实现它。我已经知道了。我正在寻找更好的解决方案。) 一种方法可能是哈希: “red” => {“Jeans myway” => 0, “Polo Shirt” => 100}, “blue” => {.. 这是一个好方法,我应该如何将其存储到文件? [编辑]更好的解决方案:如果我采用关系数据库,我将矩阵拆分为3个表产品,属性,attributes_products。 我想将它存储在一个表/矩阵中,并像矩阵一样搜索/使用它。 例如,我想选择产品,其中“旧时尚”,“现代”属性相关的属性(> 0)按相关性排序将返回’Jeans myway 0.09’,’Polo Shirt 0.04’。 (相关性通过乘法计算。)

如何对mongodb / mongoid脚本进行基准测试,以比较两种不同的查询技术

您是否有关于如何在两种不同的mongoid / mongodb查询实现上测试性能的建议? 要比较的实现与先前的“问答”相关,但为了简洁起见,我将再次在此处报告: 第一个代码: Competitor = Struct.new(:html_url, :description, :user) competitors = [] User.all.map do |user| user.watchlists.all.map do |wl| if wl.tags_array == [“ruby”, “web”, “framework”] competitors << Competitor.new(wl.html_url, wl.description, wl.user.nickname) end end end 与第二代码: Competitor = Struct.new(:html_url, :description, :user) competitors = [] User.where(‘watchlists.tags_array’ => %w[ruby web framework]).only(:nickname, :watchlists).each do |u| u.watchlists.where(:tags_array => %w[ruby web framework]).each […]

带有非Rails数据库设计的Rails

完成新手研究Rails。 可以将Rails与只读模式一起使用,该模式不符合Rails的默认命名和设计约定吗? 例如,我的数据库模式具有基表,这些表使用字符串列作为唯一主键。 例如,名为Jobs的基表可能具有定义为Jobs.Job的唯一主键,值可能为“D01234”。 现在,Jobs的子实体可能是CostCodes,其中唯一主键是CostCodes.Job(返回到Jobs表的FK引用)和CostCodes.CostCode(本地字符串列)的聚合。 对于它的价值……这是Sage Timberline Office数据库。 有什么指针吗?

是否有用于备份数据库中数据的rake任务?

是否有用于备份数据库中数据的rake任务? 我已经备份了我的架构,但我想备份数据。 这是一个小型的MySQL数据库。

如何在rails中实现复合主键

我有一个User模型,如下所示: class User < ApplicationRecord belongs_to :organization belongs_to :department end 数据库中的users表具有两个外键organization_id和department_id 。 如何将这两列作为复合主键? 到目前为止,我在网上看过两种方法: 选项1 使用composite_primary_keys gem 选项2 使用以下内容为这两列中的每一列添加索引: add_index :users, [:organization_id, :department_id], unique: true 我的问题 唯一标识users表中行必须具有department_id和organization_id以便唯一标识的行的最佳方法是什么? 索引两列并简单地将每列作为表的主键之间的区别是什么? 谢谢!

如何在Ruby on Rails中将数组持久化到数据库?

我正在尝试将一个数组数组保存到我在Rails中的SQLite数据库。 现在,我有一个可以容纳这样一个数组的对象,实例看起来没有任何问题。 但是,它显然没有被持久化到数据库中 – 当我在My_Object.array上调用不同于创建数组的视图中的函数时,它出现了nil并且不起作用。 例如: class My_Object < ActiveRecord::Base attr_accessor :array end 当我调用My_Object.new(:array => [ [1, 2, 3], [4, 5, 6] ]) ,一切似乎都能正常工作,但我无法在其他地方访问:array属性,它结果是零。 有任何想法吗?

当查询使用包含时,Rails如何处理has_many?

如果我有一个包含许多post的用户模型,Rails会在以下场景中对数据库执行多少次查询? class User has_many :posts # this is the main method in question… def has_posted? posts.any? {|p| p.posted? } end end # has an attr “posted” which is a boolean class Post belongs_to :user end # some controller users = User.includes(:posts).all # in the view 当我循环遍历has_posted?的返回post时,我在初始查询中使用的事实是否有任何魔力has_posted? 防止每个用户对posts表进行多次查找的方法?