/// BANGBOO BLOG ///

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31


March 2010 List
Penatrate on Mar 23, 2010 11:38 PM
Make your front wheel right on Mar 15, 2010 1:18 PM
MySQL DB Database on Mar 11, 2010 12:25 AM
MySQL chara issue on Mar 09, 2010 5:02 AM
CSS Selectors on Mar 01, 2010 1:29 AM

March 23, 2010

Penatrate

普藹??軆??のグラフ
これを見てるとアイデアが沸いて縺?るような觸??が
http://blog.goo.ne.jp/mit_sloan/e/c64ae794f4d9a811ec4afb6c99fa8d92

これも面白かった、俺にとってラップは大喜利とほぼイコール、お決まりとリズム
http://blog.goo.ne.jp/mit_sloan/e/13e1f273c06883363b7b96bd0e7d2543

絵文字対藹??したwww

Posted by funa : 11:38 PM | Column | Comment (0) | Trackback (0)


March 15, 2010

Make your front wheel right

バイ繧?TIPS

//フォークの油面調謨?
1)トップブリッジのアッパの臀??側ボルトを緩める
2)フォークをタイダウンで軽く保持する感じ縺?
3)フォークのキャップを緩める
4)タイダウンでフォークを縮めてキャップを浮かせ隙間を作る
5)フォークオイルを入れる

//フロントホイールのセンター出し
1)トップブリッジのアッパとボトムのボルト、ステムナットを緩め、目方でセンターを出す
2)ボトムのボルトをほぼ緩める、アッパのボルトをボトミングでもフォークが動かない程度に緩める
3)ボトミングさせてセンターを出す
4)ボトムのボルトを締める
5)アッパのボルトを一応緩めてネジれを藹??ったあと軆??める

//タイヤのバラン繧?
黄マーク・??軽点バランスマー繧?
赤マーク・??高剛性点。カーカスが重なっている、重い
1)リムロックと饅??マークを合繧?せる
2)リムロックと赤マークを対極にする

Posted by funa : 01:18 PM | Gadget | Comment (0) | Trackback (0)


March 11, 2010

MySQL DB Database

Ora Ora Ora Ora Oraの軆??きは、MySQLで。

■インデック繧?
カーディナリティ度が菴?いとは、カラムの値の種類がレコード数に觸??べて藹??ないことをあら繧?す。性別や血液型な縺?
カーディナリティ度が高いとは、カラムの値の種類がレコード数に觸??べて藹??いことをあら繧?す。身長や体重な縺?

インデックスの臀??け方 カーディナリテ繧?(一諢?な値の個謨?)が高いものに臀??ける
create index index_name on table(column);
show index from テーブル名;
インデックスを使用して觸??索しているかの確認
explain select * from table where インデックスを持つカラム名="蛟?";

■トランザクショ繝?
InnoDBのときトランザクション可能、Commitしない場合Rollbackされる
$query = 'START TRANSACTION';
$result = mysql_query ($query);

$query = 'INSERT INTO test_rollback (stock_no) VALUE ('あ')';
$result = mysql_query ($query);

$query = 'COMMIT';
//$result = mysql_query ($query);

■ユニオ繝?
--Viewを作るか、Mergeテーブルを作るか
create view viewX(varx,vary,varz)
as
SELECT * FROM table1
union
select * FROM table2

CREATE TABLE total (
 a INT NOT NULL AUTO_INCREMENT,
 message CHAR(20), KEY(a)
)TYPE=MERGE UNION=(t1,t2) INSERT_METHOD=LAST;

■月間、日臀??につい縺?
月間縺?SQL betweenの方が処理は早い
reg_date >= '2010-02-01' AND reg_date < '2010-3-01'
reg_date between 2010-02-01 and 2010-02-28 23:59:59
→これだ縺?59から00縺?1秒が抜ける?

reg_dateがdate型であれ縺?
between reg_data '2010-02-01' and '2010-02-28'で十分

datetime型なら
between reg_data '2010-02-01 00:00:00' and '2010-02-28 23:59:59'で十分

MySQLの最適化
http://slashdot.jp/journal.pl?op=display&uid=4&id=26710
http://txqz.net/blog/2006/12/13/0943

MySQLマイスターに学べ・?? 即効クエリチューニン繧? 記事一隕?
SQL実行計画の疑問解決には「とりあえずEXPLAIN」しよう

Posted by funa : 12:25 AM | Web | Comment (0) | Trackback (0)


March 9, 2010

MySQL chara issue

■結局どう設藹??する?
作成時:CREATE DATABASE aaa DEFAULT CHARACTER SET utf8mb4 COLLATE utf8_general_ci;
アプリ・??SET NAMES utf8mb4; あるい縺? mysql_set_charset('utf8mb4');

DB作成時とアプリ使用時縺?utf8かutf8mb4で最菴?限統臀??する

utf8mb4とは文字コードの臀??種で、UTF8縺?4バイト文字を扱う事が出来るも縺?
絵文字や中国漢字、日本鐔??でも特觸??漢藹??など縺?4バイトが含まれている
MySQLで縺?5.5からこ縺?utf8mb4に対応している
utfmb3縺?3バイト、MySQLは・??バイトは非推螂?

照合順蠎? 縺? utf8_general_ci >新バージョンで藹??繧?っているので鐔??確鐔??
 _ci 縺?case insensitive、_cs 縺? case sensitive、_bin はバイナ繝?
 _ci がパフォーマンスがいい、

SET NAMES より mysql_set_charsetがverによってはいい、またPDOが推奨されているが
https://techracho.bpsinc.jp/baba/2010_02_17/1133
https://www.php.net/manual/ja/function.mysql-set-charset.php

絵文字で臀??手縺?いかないと鐔??が途切れる等があるらしい、utf8が良い?
作成時:CREATE DATABASE aaa DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
アプリ・??SET NAMES utf8; あるい縺? mysql_set_charset('utf8');

-----------------------------------------

■DBのバックアップ(MySQLのダンプ)
バージョンでコマンドが違う場合がある、古いやつの場合↓

DB設藹??の文字コード、DBの運用文字コード、サーバOSの文字コード、SQLクライアントの文字コードの間で自動変觸??が觸??かり面倒
http://kgbu.hateblo.jp/entry/20081226/1230259302

バイナリでダンプし、バイナリでインポートすると問題はない
しかしバイナリのバイトシーケンスが付荳?されるので觸??持ち悪い
Blobのような特觸??なカラムがな縺?文字コードが統臀??されていればそれでやりたい(utf8)
https://ngyuki.hatenablog.com/entry/2018/06/21/220624

cp932: MS win/IBM/NEC98縺?SJIS、各社独自に拡張している、ほ縺?Win逕?

mysqldump -Q --host=192.168.1.2 --user=oreore --password=**** --default-character-set=binary name_db >$DBDUMP_FILE

-Q縺?quickオプション、通常はダンプ時に臀??気にテーブルデータをメモリへバッファしますがq指定縺?1行ごとに処理し大きなテーブルに有逕?
オプションは繝?イフ繝?2つはフル表記縺?=で値を付荳?、繝?イフン臀??つで短縮形でスペースを付けた上で値を付荳?
 --host=host_name -h host_name

???mysqldump-4.0が通らない、mysqldumpバイナ繝?/utf8オプションも使えない
Putty(SSH)等で入り sh db_backup.sh で藹??行しエラーを見る、無藹??觸??だと出せるが文字コードが混合している
 ps -aux あるい縺? ps aux でプロセスを見て、駄目なら殺す kill [pid]
phpmyadminで手動でエクスポート(無藹??觸??)で全テーブルを出し譁?DBにのせかえるしか
 →それまでは念のため通蟶?Backupに加えて手動で時々保存すれ
 →MySQLadmin>エクスポート>テーブル選択(同じ文字コードのもの・??>実行

ps -aux
kill pid

#!/bin/sh
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin

KEEPDAY=25
TODAY=`date +'%y%m%d'`
DBDUMP_FILE1=mysql.$TODAY
DBDUMP_FILE2=mysql_utf8.$TODAY
RMFILE1=mysql.`date -v -"$KEEPDAY"d +%y%m%d`.gz
RMFILE2=mysql_utf8.`date -v -"$KEEPDAY"d +%y%m%d`.gz

HOME_DIR=/hamehame/
BACKUP_DIR=$HOME_DIR/db_backup

cd $BACKUP_DIR

mysqldump -Q --host=192.168.1.2 \
--user=oreore --password=**** --default-character-set=binary name_db >\
$DBDUMP_FILE1

gzip $DBDUMP_FILE1 >/dev/null 2>&1

if [ $? != 0 -o ! -e $DBDUMP_FILE1 ]; then
echo "SUCCESS! MAYBE!"
rm -f $RMFILE1
exit 0
fi

Bシェルの鐔??事も
https://www.bangboo.com/cms/blog/page_97.html

-----------------------------------------

■2010-03-09投遞?
Like句ではバイナリか正鐔??表現の觸??險?

MySQL縺?LIKE文による抽出で期待通りの觸??索軆??果を出して縺?れなかった。
「絵コンテ」でヒットするのに「コンテ」ではヒットしなかった。

(藹??因)
MySQL4.0以臀??では日本鐔??は単なるバイナリ列と同程度の扱いだった。MySQL4.1以臀??では正蠑?に藹??言語に対応したようである。EUC-JPでも問題が出に縺?いみたいだ。

1)LIKEで觸??索したいフィールドに「BINARY」を付加する
 SELECT a FROM b LIKE BINARY 'ABC';
2)CREATE TABLE 時縺? varchar(255) BINARY と指定してお縺?

(簡単な回避方觸??)
3)バイナリが嫌ならLIKEの代繧?り縺?REGEXPを使う。これがオスス繝?
 SELECT a FROM b WHERE target LIKE '%~%'
 ではな縺?て、
 SELECT a FROM b WHERE target REGEXP '~'

他には文字コードを譏?記しておいた方がよいかも
CREATE TABLE `tablename` (
`id` int(11) NOT NULL auto_increment,
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

-----------------------------------------

■2007-05-24投遞?
HTML出力、PHP、MySQL、全驛?UTF-8
その時、??と文字化けが起こったぁぁ

//mySQLの文字コード
照合順蠎? : utf8_general_ci

//mysqlクライアント。コマンドラインからチェッ繧?
mysql> SHOW VARIABLES LIKE 'char%';
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |

//phpソースコード・文字コード設藹??
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

//phpソースコード繝?PHP内部文字コードとクエリ文字コード設藹??
<?php //charactor code for php internal
mb_language("uni");
mb_internal_encoding("utf-8");
mb_http_input("auto");
mb_http_output("utf-8");
// database connection
if (!mysql_connect("localhost", "id", "pswd"))
{
     die("Couldn't connect to MySQL");
}
if (!mysql_select_db("dbname"))
{
    die("Couldn't connect to the database");
}
//charactor code for query
$sql = mysql_query("SET NAMES utf8");
$result = mysql_query($sql);
?>

Set Names文のクエリ発鐔??がミソ。PHPで発鐔??してみる

Posted by funa : 05:02 AM | Web | Comment (0) | Trackback (0)


March 1, 2010

CSS Selectors

■* 全称セレク繧?
すべての鐔??素
h3 * em { color: red }

■ 子孫セレク繧?
孫やそれ以臀??の鐔??素に対しても有蜉?
h1 em { color: blue }

<h1>携帯電話、<i>特縺?<em>i-mode</em></i>の爆発的な普藹??につい縺?</h1>
em要素 は青く表示、樹觸??造内縺? h1要素 に入れ子になっている em要素 はすべて対雎?

■> 子セレク繧?
ある要素の直接の藹??供要素だけ
body > p { line-height: 1.3pt }
<body>
<ul>
  <li>
    <p>適用藹??</p>
  </li>
</ul>
<p>適逕?</p>
</body>

■+ 隣接セレク繧?
兄弟関臀??の鐔??素、ある要素より前に登場する要素を兄要素、後に登場する要素を弟要素
p + div { margin-top: 0.7em }

<p>段落です。</p>
<div>レイアウトコンテナです。</div>
<div>二つ目のレイアウトコンテナです。</div>
この宣言が適用されるのは、一つ目縺?div要素だけ

■[] 属性セレク繧?
そこに書かれた属性を持つ鐔??素にマッチします
p[class] { margin-top: 0.7em }
<p class="tomato>
class属諤? がある p要素 にマッチします(この場合class属性値は臀??でも良い)。

img[align=left] { margin-left: 3em }
align属諤? の値が left 縺? img要素 にマッチ

table[class~=favorite] { margin: 0em 3em }
<table class="favorite second under">
class属性値の臀??覧縺?favoriteという値を含むtable要素

span[lang|=en] { font-style: italic }
繝?イフ繝?(-)で区切られた属性値のリストに対応したセレクタです
<span lang="en-US">アメリカ英鐔??</span>
<span lang="fr, en">フランス鐔??のような英鐔??のような。</span>

■, セレクタのグループ化
同じ宣鐔??を持つ鐔??数のセレクタをグループ化したも縺?
h1, h2, h3 { font-family: sans-serif }

■: フィルタ セレクタの状態を表す
:ルート要素とは最上位髫?層に臀??置する要素のことで、HTML文書では全臀??をマークアップしている がルート要素
:root p { color:#FF0000; }

:not(~)は、指定した条件と臀??致しない要素にスタイルシートを適用するためのセレクタだ
html:not(:target)
html:not(:only-child:only-child) p { color:#FF0000; }
html:not([lang*=""]) p { color:#FF0000; }

:first-child その鐔??素内の初めの藹??の縺?
:last-child その鐔??素内の最後の藹??の縺?
:nth-child() 任諢?の数藹??番目の藹??、oddなら奇数、evenなら偶数番目な縺?
:nth-last-child()

:before その鐔??素の前に臀??かを追加する
:after その鐔??素の藹??ろに臀??かを追加する

.clearfix:after{
content:".";
display:block;
height:0;
clear:both;
visibility:hidden;
} /*IE7以藹??のモダンブラウザ向け*/

■. クラスセレク繧?
class属性の値がwarningであるdiv要素にマッチ
DIV.warning { color:#FF0000; }

■# IDセレク繧?
一意(ID型)属性の値がmyidであるp要素にマッチ
p#myid { color:#FF0000; }

======================

■疑似鐔??素
セレクターに臀??荳?し要素の特藹??の部分にスタイル臀??けができる、CSS2文法で縺?:だったがCSS3縺?::になったものも
疑似鐔??素の臀?? (::first-letter, ::first-line, ::before, ::after etc.)
疑似クラスの臀?? (:link, :hover, :visited, ,:active, nth-child(n), nth-of-type(n), :not() etc.)
a::after {
  content: "→";
}

Posted by funa : 01:29 AM | Web | Comment (0) | Trackback (0)