タグ

mysqlに関するmas-higaのブックマーク (7)

  • GitHub、Ruby on Rails向けのデータベースアダプタをオープンソースとして公開

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    GitHub、Ruby on Rails向けのデータベースアダプタをオープンソースとして公開
  • PDOのサンプルで数値をバインドする際にintにキャストしている理由

    先日PHPカンファレンス北海道2016にて「『例えば、PHPを避ける』以降PHPはどれだけ安全になったか」と題して基調講演を担当致しました。その際のスライドはこちら。 そうしたところ、以下のご指摘をいただきました。 @ockeghem スライド拝見しました。39番目のスライドですが、バインドのタイミングでintにキャストするのはちょっと例として良くない気がします。意図的にオーバーフローを起こすことで想定外のレコードの取得を許してしまいそうです。キャストしない方がまだ安全だと思うのですが。 SQLデータベースは、int型よりも大きな桁数を扱える場合があるので、intへのキャストを避けた方がよいという指摘は一般論としてはもっともなものだと考えます。PHPの場合、9223372036854775807を越える数字文字列をint型にキャストすると、9223372036854775807が返ります(

    mas-higa
    mas-higa 2016/04/21
    PHP と MySQL の仕事をしてなくて本当によかった
  • MySQL と寿司ビール問題 - かみぽわーる

    MySQL と Unicode Collation Algorithm (UCA) - かみぽわーる に関連するトピックで、 MySQL には寿司ビール問題というのがある。 寿司ビール問題どっかで詳しくお話を聞くべきだよなぁ。。。— RKajiyama (@RKajiyama) March 18, 2015 これはどういう問題かというと、 MySQL の Unicode では binary collation にしてコードポイントで比較しないと🍣と🍺に限らず絵文字が同値判定されるという問題です。 あれ? MySQL の utf8mb4 charset って、4バイト文字同士を比較すると同じ文字扱いされる? SELECT '🍣'='🍺' → 1 MySQL的には寿司とビールは同じ扱い。— とみたまさひろ (@tmtms) December 22, 2014 MySQLで select

    MySQL と寿司ビール問題 - かみぽわーる
  • ActiveRecordでbinary型をblob以外の型にする - Qiita

    ユーザーアイコン設定しようとして $ rails g model User (略) icon:binary ってしてたら MySQLblob型(最大64kb)で定義されてしまった。容量の大きいアイコンだと途中で切れてしまう事態に。 対応 例えばアイコンの上限値を700kbまで許可するように変更するのであれば、migrationファイルに以下のように書けばOK。 もちろんCreateのときにやってもOK。 これで blob => mediumblob になってくれます。 ただし、ここで700KBと指定したからといって701KB以上をエラーにしてくれるわけではなさそう。(未検証) DBのテーブルににそんな制限はかかってないし、生成されるUser.rbにもそんな記述はないため。 そこはちゃんとModelにValidation処理を書かないとダメかなと思います。 あくまでここで指定された"lim

    ActiveRecordでbinary型をblob以外の型にする - Qiita
    mas-higa
    mas-higa 2013/10/22
    "そこはちゃんとModelにValidation処理を書かないとダメかな" それなら 64kb で validation すればよかったんじゃ…
  • pryをMySQLのクライアントのようにテーブル表示する | Act as Professional

    pryはいざというとき、便利だなと思う@HIROCASTERでございませう。 hirb-unicodeを使って、pry操作中のActiveRecordの結果をSQLの結果っぽく表示します。 通常は以下の様な表示になります。 ちょっと、よく見ないとわかりづらいですよね。 それが hirb-unicode によって、 この様にテーブル表示してくれます。件数が多くあると、通常通りの表示に比べて、とても見やすくなります。 また、文字が多くターミナルの横幅が足らなければ、自動的に この様に表示します。MySQLを利用している人にはおなじみの表示です。 導入方法pryやpry-raisを導入していることを前提とします。 Gemfileに gem 'hirb-unicode'と、記述して、 $ bundle installなどをしてgemをインストールします。 次に .pryrc ファイルを作成します。

    pryをMySQLのクライアントのようにテーブル表示する | Act as Professional
    mas-higa
    mas-higa 2013/03/01
    Struct とか Hash の Array を渡すと適当に整形して出力してくれる gem とかあるんですかね。
  • Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT

    平素よりQA@ITをご利用いただき、誠にありがとうございます。 QA@ITは「質問や回答を『共有』し『編集』していくことでベストなQAを蓄積できる、ITエンジニアのための問題解決コミュニティー」として約7年間運営をしてきました。これまでサービスを続けることができたのは、QA@ITのコンセプトに共感をいただき、適切な質問や回答をお寄せいただいた皆さまのご支援があったからこそと考えております。重ねて御礼申し上げます。 しかしながら、エンジニアの情報入手方法の多様化やQAサービス市場の状況、@ITの今後のメディア運営方針などを検討した結果、2020年2月28日(金)15:00をもちましてQA@ITのサービスを終了することにしました。 これまでご利用をいただきました皆さまには残念なお知らせとなり、誠に心苦しく思っております。何とぞ、ご理解をいただけますと幸いです。 QA@ITの7年間で皆さまの知識

    Rails で、Controller に定義されている action を一度に取得する方法はありますか? - QA@IT
  • FOSS License Exception

    MySQLにはFOSS License Exceptionという制度がある。そのような制度があることはあまり知られていないし、名前を知っていても内容はよく知らない、または誤解しているという人が結構居る。そこで、FOSS License Exceptionについて改めてここで紹介したい。 MySQL FOSS License Exception http://www.mysql.com/about/legal/licensing/foss-exception/ 知っての通り、MySQLはデュアルライセンスだ。無料で公開されているMySQL Community ServerはGPLv2でライセンスされており、その他に有料のコマーシャル・ライセンス版が存在する。コマーシャル・ライセンス版はソースコードを公開したくないユーザー向けのライセンスで、俗にOEM版とも呼ばれる。 さて、FOSS Lice

    FOSS License Exception
    mas-higa
    mas-higa 2012/10/09
    クローズドにしたければ金払え
  • 1