タグ

mysqlに関するknoのブックマーク (6)

  • PHPとMySQLのソートが一致しなくて禿げた - Qiita

    こんにちは。はじめまして。tarokamiakzeです。 PHPのsort系関数の結果と、MySQL のorder by指定を比較する機会がありまして。 記号の扱いが一致しなくて泣きたくなりました。 (PHPUnitで、検索系API当にソートされているか検証したかっただけなのに...) ので、怒りに任せて記事を書きます。LAMP環境とはなんだったのか!! 再現方法 MySQL編 # MySQL CREATE TABLE `sort_test` ( `name` varchar(255) NOT NULL, PRIMARY KEY (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; INSERT INTO `sort_test`(`name`) VALUES ("0"),("1"),("a"),("_"); SELECT `name` as `M

    PHPとMySQLのソートが一致しなくて禿げた - Qiita
    kno
    kno 2017/08/02
    "LAMP環境とはなんだったのか!!"それなw
  • MySQLに重大な脆弱性見つかる、パッチ存在せずデフォルトで影響

    攻撃に利用された場合、root権限で任意のコードを実行され、サーバを制御される可能性が指摘されている。 米Oracle傘下のオープンソースデータベース「MySQL」に未解決の脆弱性が見つかったとして、セキュリティ研究者が9月12日に概略やコンセプト実証コードを公開した。サイバー攻撃に利用された場合、root権限で任意のコードを実行され、サーバを制御される可能性が指摘されている。 研究者のDawid Golunski氏が公開した情報によれば、MySQLの脆弱性は複数発見され、、中でも特に深刻な1件については、リモートの攻撃者がMySQLの設定ファイルに不正な内容を仕込むSQLインジェクション攻撃に利用される恐れがある。 この脆弱性は、MySQLの最新版を含む5.7系、5.6系、5.5系の全バージョンに、デフォルトの状態で存在する。現時点でOracle MySQLサーバの脆弱性修正パッチは存在

    MySQLに重大な脆弱性見つかる、パッチ存在せずデフォルトで影響
    kno
    kno 2016/09/13
  • MySQLのint型で001と表示する方法ってありますか? - OKWAVE

    MySQLPHPを連携させて住所録を作っているのですが、主キー(int型)の表示方法を "1"→"0001" と表示させたいと思っています。 を見ながらしかできない初心者なもんで、どうすればそうなってくれるのか全く分からない状況です。 MySQLのバージョンは4.020C、PHPのバージョンは4.3.7.7で制作しています。 宜しくご教授下さい。

    MySQLのint型で001と表示する方法ってありますか? - OKWAVE
    kno
    kno 2010/09/14
    "select right(concat('00', id),3) from t;"
  • プログラムのコード量を減らす MySQL 関数 | バシャログ。

    みなさん琉球朝顔ってご存知ですか?朝顔の中でもとてもたくましい事で有名な種類ですが今年の夏から我が家の庭に植えた所、未だに花が咲き誇っていて季節外れな事この上ありません、、、なんか雑草化すると駆除は困難だとか、、、 さて今日は知っておくと何かと便利な MySQL 組み込みの関数たちをご紹介しようと思います。プログラムサイドに記述すると数行に及ぶ処理が、SQL ベースで行うとほんの数文字で済んでしまいます。 DATE, DATE_FORMAT 日付や時刻関連の関数はとても充実していますが、中でもよく使うのはこの辺りでしょうか。こんなレコードがある時、、、 mysql> SELECT created FROM users; +---------------------+ | created | +---------------------+ | 2009-06-05 13:33:26 | |

    プログラムのコード量を減らす MySQL 関数 | バシャログ。
    kno
    kno 2009/10/29
    確かに使えるけど、MVCでやってる時には微妙な気が (modelで日付フォーマットされててorzとなった経験が)
  • Mysql+PHPで件数取得:COUNT mysql_num_rows FOUND_ROWS 比較 | 株式会社フォレスト・コンサルタンツ

    のように、全体件数と表示中のデータ件数が併記される場合が多い。ところが、レコード数が多くなったり、SQL文が複雑になると、全体件数の取得にかかるスピードが物凄く遅くなる場合がある。 と言う訳で、どのような方法で全体件数を取得するのが高速なのかを調べてみた。 環境はMysql+PHP。候補は次の3つ。 COUNTを使う。 mysql_num_rowsを使う。(*PHP関数) FOUND_ROWSとSQL_CALC_FOUND_ROWSを使う。 サンプル ※以下のSQLの結果、及び、LIMITの制約を外した場合の結果(=全体件数)を取得する。 $query = 'SELECT id, name, area FROM company ORDER BY id LIMIT 20'; $q1 = 'SELECT COUNT(*) FROM company'; //全体件数を取得するシンプルなSQLクエ

    kno
    kno 2009/07/25
    ”「SELECT * WHERE ~」でmysql_num_rowsするのは最悪。”
  • mysqlのint(11)の11

    MySQL Manual | 6.2.1 数値型 MySQL には、INT(4) のように、型の基キーワードに続いて整数値の表示幅をかっこ内に指定できるオプションがあります。このオプションの表示幅の指定は、カラムに指定された幅より小さい幅を持つ値で表示の左側を埋める目的で使用されますが、そのカラムに格納できる値の範囲が制限されたり、そのカラムに指定された幅を超える幅を持つ値の桁数が制限されたりすることはありません。オプションの拡張属性 ZEROFILL と組み合せて使用した場合、デフォルトのスペースに代わってゼロが埋め込まれます。けっこう勘違いしている人がいそうなのですが、mysqlの型でint(?)とか、?に数字を入れますが、この数字は上記の通りZEROFILLをした際にスペースに代わってゼロが埋め込まれる際の幅なのです。自分は勘違いというかあまりよくわかっていませんでした…。 つまり

    kno
    kno 2009/05/19
    な、なんだtt(ry
  • 1