Tag: mysql

‘𠂉’不是有效的unicode字符,但在unicode字符集中?

简短的故事:我不能通过使用Ruby on Rails应用程序中的文本字段(使用默认的UTF-8编码)或直接使用MySQL GUI输入,将像’𠂉’这样的实体存储在MySQL数据库中应用程序。 据我所知,所有中文字符和字根都可以毫无问题地输入数据库,但不是这些很少输入的“字符组件”。 上面提到的字符是unicode U + 20089和html实体𠂉 我可以通过输入𠂉并删除html转义来在页面上显示它,但我想将其存储为unicode字符并保持html转义到位。 还有许多其他中国“组件”(全部字符的一部分,通常由2或3个笔画组成)导致同样的问题。 根据这个页面,提到的字符在UTF-8字符集中: http : //www.fileformat.info/info/unicode/char/20089/charset_support.htm 但是在邻近的’… 20089 / index.htm’页面上,有一个警告说它不是一个有效的unicode字符。 作为参考,可以在Mac OS X中找到该实体,方法是搜索字符调色板(国际菜单,“显示角色调色板”),通过激进搜索,并查看“丿”激进。 抱歉,如果这太开放了……这样的角色可以存储在基于UTF-8的数据库中吗? 如何支持和不支持此字符,这两个字符都存在于字符集中且无效?

需要sql查询帮助来查找标记有所有指定标签的内容

假设我有以下表格: TAGS id:整数 name:string post id:整数 主体 引用的Tagging id:整数 tag_id:整数 post_id:整数 我将如何编写一个查询,选择所有标记有以下所有标记的post(标签表的名称属性):“Cheese”,“Wine”,“Paris”,“Frace”,“City”,“风景“,”艺术“ 另请参阅: 需要有关sql查询的帮助以查找具有最多指定标记的内容 (注意:类似,但不重复!)

Rails开发 – 无法连接到’localhost’上的MySQL服务器(10061)

我是一个使用MySQL作为数据库的Rails开发人员新手。 我可以使用以下命令成功连接到MySQL: MySQL -u macDaddy -p 在命令提示符下,所以我知道用户有效且MySQL正在运行。 但是当我试着奔跑的时候 rake db:schema:dump 在命令行我收到此错误:rake aborted! 无法连接到’localhost’上的MySQL服务器(10061) 我的database.yml有问题吗? 这里是: development: adapter: mysql2 encoding: utf8 reconnect: false database: bookmobile pool: 5 username: macDaddy password: booklover host: localhost socket: mysql port: 3306 我也尝试删除端口和套接字行,但我仍然得到相同的错误。 请帮忙。 以下是我的版本:在Windows 7上开发 MySQL Ver 14.14 distrib 5.5.21 for win64 Server version 5.5.21 Rails 3.2.1 谢谢!

MySQL2 Ruby gem不会安装10.6

我知道这已被问了好几次,但是我搜索了一下,我尝试了许多不同的东西,没有任何效果。 ERROR: Error installing mysql2: ERROR: Failed to build gem native extension. /Users/kishinmanglani/.rvm/rubies/ruby-1.9.2-p180/bin/ruby extconf.rb checking for rb_thread_blocking_region()… yes checking for mysql.h… yes checking for errmsg.h… yes checking for mysqld_error.h… yes creating Makefile make gcc -I. -I/Users/kishinmanglani/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/x86_64-darwin10.6.0 -I/Users/kishinmanglani/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1/ruby/backward -I/Users/kishinmanglani/.rvm/rubies/ruby-1.9.2-p180/include/ruby-1.9.1 -I. -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_MYSQL_H -DHAVE_ERRMSG_H -DHAVE_MYSQLD_ERROR_H -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -I/usr/local/mysql/include -Os -g -fno-common -fno-strict-aliasing -arch i386 -fno-common -O3 -ggdb […]

你会推荐什么版本设计模式

我需要在应用程序中构建“版本控制”,并且想知道如何最好地处理它。 我有这个一般模式: 模型A有很多B 在更新时,A的属性需要进行版本化,并且其关联对象(B)也需要进行版本控制。 因此,应用程序将显示A的当前版本,但也必须能够查看A的早期版本及其关联对象。 我想使用文档存储,但这只是应用程序的一部分,并且拥有doc存储和关系数据库会带来更多复杂性。 我考虑过使用星型模式,但在我进步之前,我想知道是否有一个设计模式可以解决这个问题? 这个问题倾向于解决在关系数据库中存储关联对象的版本的问题。 哪里有固有的需要能够有效地查询数据(即序列化对象是不够的)。 更新:我在想什么/已实施但想看看它是“更好的方式” ,———. 1 * ,——–. | Model A |———-| Model B| `———‘ `——–‘ |PK | | a_id | |b_version| |version | |version | `——–‘ `———‘ 我将复制模型A和所有相关的B并增加版本属性。 然后通过b_version和b.version进行选择以加入B’。 只是想知道这是否可以做得更好。

Windows 7 x64中Rails的MySQL驱动程序

我在新安装的Windows 7机器上连接MySQL数据库时遇到问题。 我尝试迁移数据库时遇到此错误。 !!! The bundled mysql.rb driver has been removed from Rails 2.2. Please install the mysql gem and try again: gem install mysql. rake aborted! 193: %1 is not valid Win32 application – C:/Ruby/lib/ruby/gems/1.8/gems/mysql-2.8.1-x86-mswin32/lib/1.8/mysql_api.so 我目前已安装 ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-mswin32] mysql version 5.0.86 for Win64 gem 1.3.1 mysql-2.8.1-x86-mswin32

ActiveRecord错误:SAVEPOINT active_record_1不存在

完整的错误是 ActiveRecord::StatementInvalid: Mysql2::Error: SAVEPOINT active_record_1 does not exist: ROLLBACK TO SAVEPOINT active_record_1 每当我尝试创建一个新的ActiveRecord对象时,我正在编写unit testing并收到此错误 – 但仅在某个点之后。 这些行发生在以下行之后: ActiveRecord::Base.connection.execute “DROP TABLE IF EXISTS foo” ActiveRecord::Base.connection.execute “CREATE TABLE foo (id INTEGER PRIMARY KEY)” (如果我的测试成功,表’foo’将填充数据) 在上面这些行之前,我可以写一些类似的东西 User.create(email => ‘foo@bar.com’) 一切正常。 但是,如果我在调用ActiveRecord :: Base.connection.execute之后尝试编写上面的行,那么我得到上面描述的SAVEPOINT错误。 我也尝试将我的执行语句放在一个事务中,但这没有帮助。 我很难过。 仅供参考 – 我正在使用Rails 3.2.8

有效地从多个轨道模型创建“馈送”?

这是从多个不同的Rails模型创建“提要”的后续操作。 在这个问题中,tadman建议使用这种方法从三个模型(Ticket,Post,Report)创建最近项目的用户提要: @items = [ Ticket, Post, Report ].inject([ ]) do |a, with_class| a + with_class.find(:all, :limit => 10, :order => ‘created_at DESC’) end.sort_by(&:created_at).reverse[0, 10] 他认为这是一种有效的方法,但这不一定是最有效的方法。 他建议,除了另一种方法之外,“创建一个与各种记录具有多态关联的索引表”。 我真的很想学习更多有关这种替代解决方案的信息,它似乎更高效,更优雅。 谁能告诉我怎么会这样做? 让我们使用上一个问题中相同的背景信息作为基础。

支持Rails中的外键约束

在Ruby on Rails中,如何在迁移中添加外键约束?

如何在Rails中使用Active Record时指定Ruby正则表达式?

为了获得invoice_number是纯数字的所有工作,我做: Job.where(“invoice_number REGEXP ‘^[[:digit:]]+$'”) 是否可以通过在Ruby而不是MySQL中指定正则表达式来做同样的事情?