Tag: mysql

数据库特定迁移代码

我正在创建一个需要在多个数据库下运行的应用程序。 我目前在迁移中有一些代码,我只想在特定的数据库(postgresql和mysql)下运行。 有任何设置方法吗? 谢谢。

MYSQL安装故障

在我的mac上通过终端升级了几个gem之后,我创建了一个由mysql数据库备份的新rails项目。 启动应用程序后,将显示常规欢迎页面。 这是问题 – 我尝试点击标题为“关于你的应用程序的环境”的链接,我在浏览器中收到以下输出: MissingSourceFile in Rails/infoController#properties no such file to load — mysql 我也在终端接收此输出 The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql. Processing Rails::InfoController#properties (for 127.0.0.1 at 2008-12-09 20:41:41) [GET] Processing Rails::InfoController#properties (for 127.0.0.1 at 2008-12-09 20:41:41) [GET] MissingSourceFile (no […]

我可以从MySQL sql文件生成rails数据库迁移文件上的ruby

我有一个sql脚本文件,导入后在MySQL数据库中创建一个表,并用2800记录填充它。 这些都是比利时国家的邮政编码。 现在我想从中创建一个Ruby on Rails数据库迁移文件。 知道我怎么能这样做吗? 也许有办法解决? 告诉数据库迁移文件执行单独的sql脚本? 谢谢,迈克尔

如果超过24小时,Mysql“Time”类型在Rails中给出“ArgumentError:参数超出范围”

我正在一个遗留的mysql数据库上编写一个rails应用程序,它也提供了一个PHP生产工具。 由于这种设置,我无法更改数据库结构。 我遇到的问题是两个表有一个“时间”属性(持续时间),只要时间低于24:00:00 rails处理这个,但是一旦rails遇到类似39:00:34的东西我得到这个“ArgumentError:参数超出范围”。 我已经研究过这个问题并看到rails如何处理时间类型,从我的理解中它将它视为日期时间,因此值为39:00:34会抛出此错误。 我需要一些映射/或更改类型转换的方法,所以我不会得到这个错误。 将值读取为字符串也可以。 任何想法将是最受欢迎的。 干杯

为了Heroku,从MySQL切换到PostgreSQL用于Ruby on Rails

我正在尝试将一个全新的Ruby on Rails应用程序推送到Heroku。 目前,它位于MySQL上。 看起来Heroku并不真正支持MySQL,因此我们正在考虑使用他们支持的PostgreSQL。 我有多难以期待这一点? 为实现这一目标,我需要做些什么? 再次请注意,我现在的DB(开发和生产)都是空的。

查询与activerecord的交集

我真的想在活动记录的帮助下进行以下查询 (select * from people p join cities c join services s where p.city_id = c.id and p.id = s.person_id and s.type = 1) intersect (select * from people p join cities c join services s where p.city_id = c.id and p.id = s.person_id and s.type = 2) 问题是,首先,mysql不支持交叉。 但是,这可以解决。 问题在于我可以获得活动记录来输出甚至接近它的任何东西。 在活动记录中,我能做的最好的事情是发出多个查询然后使用reduce :&来加入它们,但后来我得到一个数组,而不是一个关系。 这对我来说是一个问题,因为我想调用限制等等。另外,我认为交叉点要由数据库完成,而不是ruby代码。

rails连接到Mysql时“访问被拒绝”

我已经完成了几个地方提到的所有程序,我也从lynda.comvideo教程中学到了。 我使用Mac 10.7并安装了rubystack。 我创建了数据库,添加并检查了database.yml,你可以再次看到它。 development: adapter: mysql2 encoding: utf8 reconnect: false host: localhost database: simplecmsdevelopment pool: 5 username: simple_cms password: maiwandj socket: /tmp/mysql.sock 因此,当我运行rake db:schema:dump时,它会打印以下错误 bash-3.2$ rake db:schema:dump /Applications/rubystack-1.9.3-18/ruby/lib/ruby/gems/1.9.1/gems/bundler-1.5.2/lib/bundler/runtime.rb:220: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777 rake aborted! Access denied for user ‘simplecms’@’localhost’ (using password: YES) /Applications/rubystack-1.9.3-18/simplecms/config/environment.rb:5:in `’ Tasks: TOP => db:schema:dump […]

启用local-infile,将数据从rails加载到远程mysql

我使用connection_ninja( https://github.com/cherring/connection_ninja )从我的rails应用程序连接到远程mysql数据库。 我的模型中有一个方法,它使用’load data local infile ..’从运行我的rails app的服务器加载一个csv文件到远程mysql db。 代码如下: class Product < ActiveRecord::Base @conn = use_connection_ninja(:rl_op) self.table_name = 'RlProduct' def self.update(file_path) sql = "LOAD DATA LOCAL INFILE '#{file_path}' INTO TABLE RlProduct FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n' (name,price,productId)" @conn.connection().execute(sql) end end 这给了我以下错误: Mysql2::Error: The used command is not […]

Rails与内存数据库

我可以将rails设置为使用带有MEMORY的mysql作为数据库引擎吗? 我从来没有重新启动mysql,并且经常重建数据库我宁愿让它快速。 让内存db运行测试也会很好。 编辑:我应该指定这只是开发/测试,而不是生产。

如何修复libmysqlclient.15.dylib未加载导致的错误?

我升级到Rails 2.2.2并安装了MySQL 2.7 gem,当我尝试运行迁移或启动服务器时看到此错误: dlopen(/Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle, 9): Library not loaded: /usr/local/mysql/lib/mysql/libmysqlclient.15.dylib Referenced from: /Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle Reason: image not found – /Library/Ruby/Gems/1.8/gems/mysql-2.7/lib/mysql.bundle 有什么问题?