ARCHIVE "2016-03"

(3 件中 1 件目〜 3 件目を表示中)

[MySQL]インポートで「ERROR 2006 (HY000) at line 2: MySQL server has gone away」のエラー


約10万行のinsert文が書かれたSQLをDBに流し込もうとした時出たエラー。


$ mysql --user={root} --password={pass} --default-character-set=utf8 {db_name} < C:/insert.sql
ERROR 2006 (HY000) at line 2: MySQL server has gone away

1行あたりの実行するSQLデータが大きすぎるとこのようにサーバに蹴られる。バイバイ。


ん?でもおかしいな?
以前これより大きいデータを流し込んだこともあるんだけどその時はエラ...
...
...
read more >>>

[MySQL]文字数のカウントはchar_length()、バイト数の長さはlength()



MySQLで文字数のカウントを調べる場合はchar_length()という関数を使う。
バイト数の長さを調べる場合はlength()という関数を使う。


使い方は引数にカラム名を指定する、あるいは特定の文字列を直接指定するなどの使い方がある。

■例:char_length()とlength()の使い方

SELECT
CHAR_LENGTH('あ') AS char_lengh,
LENGTH('あ') AS length
FROM
(SELECT 1) AS dummy
;


■結果

+----------------...
...
...
read more >>>

[MySQL]SELECT文の出力結果に番号を振る



SELECT文で取得した結果に1から始まる連番を付けたい場合は以下のようにする。


SELECT
(@num := @num + 1) AS no,
T1.name
FROM
(SELECT @num:=0) AS dmy,
T1
;


キモは変数@numをFROM句内で0に初期化しているところ。
あとはレコードごとに変数を+1している。


これをコマンドで実行すると以下のような感じになる。

+------+------+
| no | name |
+------+------+
| 1 | hoge |...
...
...
read more >>>

(3 件中 1 件目〜 3 件目を表示中)