5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

MySQL 総合 Part4

1 :NAME IS NULL:05/02/11 21:24:15 ID:???
快速RDBMS、MySQLの総合スレです。

■ 公式サイト
http://www.mysql.com/
http://www.mysql.gr.jp/

■ リファレンスマニュアル
http://dev.mysql.com/doc/mysql/ja/

■ メーリングリスト
http://lists.mysql.com/
http://www.mysql.gr.jp/ml.html

■ 前スレ
MySQL 総合 Part3 http://pc5.2ch.net/test/read.cgi/db/1096838301/
MySQL総合 Part2 http://pc5.2ch.net/test/read.cgi/db/1079502373/
MySQL総合 http://pc2.2ch.net/test/read.cgi/db/1056942908/

2 :NAME IS NULL:05/02/11 21:25:15 ID:???
■ MySQL支援ソフト
phpMyAdmin http://www.phpmyadmin.net/
MySQLCC http://www.mysql.com/products/mysqlcc/
GMysqlCC http://gmysqlcc.thepozer.net/
MySQL Designer http://www.alhem.net/dbdesigner/

■ MySQL書籍リスト
http://www.mysql.com/portal/books/
http://www.mysql.gr.jp/books.html

■ MySQL解説記事
快速MySQLでデータベースアプリ!
http://www.atmarkit.co.jp/flinux/index/indexfiles/mysqlindex.html

■ 関連スレ
mysql ヘルプ! http://pc2.2ch.net/test/read.cgi/php/1011683282/
MySQL vs PostgreSQL http://pc5.2ch.net/test/read.cgi/db/1056943680/

3 :NAME IS NULL:05/02/11 21:46:26 ID:???
前スレで以下のリファレンスマニュアルへのリンクがあった。

6.3.6.2 その他の各種関数
6.4.8 LOAD DATA INFILE 構文

1.8.4.4 ストアドプロシージャとトリガ
1.8.4.6 ビュー
2.2.6 MySQL がサポートしているオペレーティングシステム
3.3 データベースの作成および使用
4.4.1 GRANT および REVOKE の構文
4.5.6.5 myisamchk のその他のオプション
4.8.2 mysqld_safe(mysqld のラッパ)
4.9.9 mysqlimport(テキストファイルからのデータのインポート)
5 MySQL の最適化
6.2 カラム型
6.2.2.2 DATETIME、DATE、TIMESTAMP 型
6.3.2 文字列関数
6.4.1 SELECT 構文
6.4.1.1 JOIN 構文
6.8.2 MySQL 全文検索の調整
6.8.3 全文検索に関連する TODO 項目
A.5.3 NULL 値の問題
G MySQL の正規表現

4 :NAME IS NULL:05/02/11 22:03:18 ID:???
テンプレ以上

5 :NAME IS NULL:05/02/11 22:18:19 ID:???
ttp://www.mysqlfront.de/

6 :NAME IS NULL:05/02/11 22:23:30 ID:???
>>2s/pc2/pc5/


7 :NAME IS NULL:05/02/12 02:53:24 ID:pNOCDTMn
誰か MySQL++ と MySQL(4.0|4.1|5.0) の定量的に性能比較した人いませんか・・・(´・ω・`)
ttp://tangentsoft.net/mysql++/

8 :NAME IS NULL:05/02/12 03:29:44 ID:???
前スレかわいいのが1000とったな

9 :NAME IS NULL:05/02/12 16:09:29 ID:???
>>7
++ですか。
使ってる人ってどれくらいいるんだろ?

10 :NAME IS NULL:05/02/12 18:10:17 ID:???
maxっとmaxじゃないやつってなにが違うんでしょうか?

11 :NAME IS NULL:05/02/12 18:26:47 ID:???
>>9

C++ のドライバだろ。


12 :NAME IS NULL:05/02/12 18:40:52 ID:???
>>10
MAXは地域限定。MAXは糖度が高い。

もちっと、どのMAXか限定してよ。

13 :NAME IS NULL:05/02/12 18:47:58 ID:???
>>11
いや分かっているわけだが。

14 :NAME IS NULL:05/02/13 07:39:45 ID:???
bin-log ファイルが 20 コ溜ったので(^^;
cd /path/to/mysql; mkdir bin-log; mv hostname-bin.* bin-log して
my.cnf に log-bin = /path/to/mysql/bin-log/hostname-bin と書いて
mysqld を再起動させたんですが、root で
mysql> show databases;
してみると何故か bin-log ディレクトリが勝手にデータベースとして
認識されちゃってます(^^;
なぜこんなことになっているのでしょうか?

ちなみに
mysql> use bin-log
Database changed
mysql> show tables;
Empty set (0.03 sec)
(^^;

15 :NAME IS NULL:05/02/13 11:30:27 ID:???
>14
mkdir bin-log
でフォルダを作ったからでは?
フォルダ=DB という仕様です。

16 :NAME IS NULL:05/02/13 21:36:16 ID:???
バイナリファイルをMYDに格納するとそれ自体で圧縮されますか?
それとも事前に圧縮して格納した方がいいんですか?
あとmyisampack-myisamchkの圧縮率は一般的に効果的ですか?

17 :NAME IS NULL:05/02/14 00:09:00 ID:BtBlqqvx
>>16
圧縮はされない、効率的にレイアウトされる程度
(ファイルシステム/テーブルタイプによるが)
必要ならIn/OutにGZIP等を噛ます。

18 :NAME IS NULL:05/02/14 01:33:29 ID:???
Bツリーインデックスなデータベースだから
ファイルシステムもBツリーなReiserFS4を採用。

19 :NAME IS NULL:05/02/14 09:53:25 ID:???
mysqlccってかなり使えるね!

20 :NAME IS NULL:05/02/14 10:08:47 ID:???
>>12
??よく分からないのですが、maxにも色々あるということでしょうか?

MySQLAdministratorで設定するときに、my.iniに起動するmysqlを選択できますが、
mysqld、mysqld-ntとの違いは、単体のexeなのかサービスとして動作するものなのかの
違いだと思っているのですが、それぞれにある、mysqld-maxと、mysqld-max-ntとは
なんなのでしょう?

現在調べているmysqlの環境はmysql-4.0.22です。

21 :NAME IS NULL:05/02/14 12:15:12 ID:???
>>20
MySQL絡みだとMaxDBもあるし。
MySQLのバイナリでmaxであるかないかの違いは、
MySQL ABがコンパイルオプションで、「とある機能」を有効にして
ビルドしたかしてないかの違い。ただし「とある機能」はそのバイナリのバージョンにもよる。

>現在調べているmysqlの環境はmysql-4.0.22です。
前にも書いたけど、MySQL4.0.22だと

無印: 95/98/ME向け。デバックコードも含んでいるためサイズが大きく、動作は若干遅い。
opt: 95/98/ME向け。デバックコードは含まないため、無印よりも動作は速い。
max: optをBerkeleyDB(トランザクション)が使えるようにしたもの。
InnoDB(トランザクション)は、無印/maxのどちらでも使えるので、
MySQL3.xの頃のようにトランザクションサポートの有無の違いではない
nt: optまたはmaxをNT/2000/XP向けに最適化してビルド
(NTサービスとして起動、名前付きパイプの使用)

だから「mysqld、mysqld-ntとの違い」というのは合ってます。

22 :20:05/02/14 12:52:53 ID:???
>>21
なるほど!丁寧な解説ありがとうございます。
じゃあ、4.0.22の場合だと、maxを使用することで、BerkeleyDBが使用できるようになるということですか。

InnoDBとBerkeleyDBのどちらもトランザクションが使えるようですが、
内部的な難しい違いはほっといたとしたら、

・ロックは行単位でなく、ページ単位で行なわれる (ページ単位って?)

こんなもんでしょうか?


23 :NAME IS NULL:05/02/14 14:00:14 ID:???
>>22
ページ単位というはのテーブル内のレコード群を容量単位でロックするということです。
一方の行単位というのは1レコード単位でロックをかけるということです。
InnoDBとBDBとの決定的な差異はInnoDBがMVCC機能を持っているということに尽きるでしょう。
これはロック個所の書き込みだけをアトミックにするということです。
ロックされているレコードを読み込むことは可能。BDBのロックだと読み込みも不可になってしまう。
以上、某書籍の受け売りです(^^;


24 :20:05/02/14 15:19:32 ID:???
>>23
解説、ありがとうございます。
MyISAMは、InnoDBと比べて高速という利点があるわけですが、
InnoDBではなく、BDBを使う機会はあまりないんでしょうかね。

1データベース内で、テーブルの用途に応じて、MyISAMと
InnoDBを使い分けるって設計は一般的でしょうか?
例えば、マスタ系はMyISAMで作成して、トランザクション系はInnoDBを使うとか。
考えるの面倒くさいから、全部InnoDBにしようと思っていますが。

25 :NAME IS NULL:05/02/14 18:49:01 ID:???

SQLの最後の" "や";"の件

何だかこんがらかっています。超初歩的なことかも知れませんが恥を忍んでお聞きします。

SQLのクエリ文の最後なのですが、" "(半角空白)が入ったり、";"が入ったり、何も無かったり・・・
何がどー違うんでしょうか?

下記はネット上で拾ってきたクエリです。

最後に半角空白が入っている例(「常識」とおっしゃる方も・・・)
@$sql = "select wo,Ix,Iy,Zx,Zy from ibeam_tbl ";
A$sql = "INSERT INTO linkdata(gt_site, gt_kanri, gt_url, gt_os, gt_line, gt_bind, gt_mta, gt_www) ";

最後に";"が入っている例
B$sql = "SELECT COUNT(*) AS cnt FROM linkdata;";

)で終わる分には何もいらないのか?
C$query = "INSERT INTO ADDRESS (date,time,name,address,tel,email,memo) values ('$date','$time','$name','$address','$tel','$email','$memo')";
んぢゃ、Aとどー違うん?

何がどー違うんでしょ・・・(´・ω・`)?


26 :NAME IS NULL:05/02/14 19:05:40 ID:???
>>25
半角スペースはあんまり気にしない。
ただ、文字列を連結してSQL文を書くときに、スペースを空けることがある。
$sql = "sellect * from hoge ";
$sql = $sql . "where field_foo = xxx";
1行目の最初でスペースを入れないと、from hogewhere となってしまうから、それを避けるために
末尾にスペースを入れているのでは?
@Aのように1行で完結する場合はスペースを空ける必要はないが、
入れる時と入れないときと、考えずに全てに入れているのだと思う。

セミコロンは、プログラムからSQLを実行する際には、いらないと思う。
あってもなくても良いかと。
sqlを実行するコンソールからSQL文を入力するときなんかは、
1文の終わりを示すためのセミコロンを使う。
別の言い方をすれば、1つのSQL文を何行使って書いてもいいから、セミコロンでsql文の終わりを伝えている
sql> select *
sql> from
sql> hoge; ←ここで「select * from hoge」のSQLを入力し終わったことを伝えている。

sql> select *
sql> from
sql> hoge ←まだ続きがあるのでセミコロンは入れていない
sql> where
sql> field_bar = xxx;

27 :NAME IS NULL:05/02/14 19:09:00 ID:???
PHP+MySQLだと行末のセミコロンはダメじゃなかったかな
PostgreSQLならOKだったはず

28 :NAME IS NULL@25:05/02/14 19:59:32 ID:???
どうもです。
とりあえず、" "(半角空白)を入れておけば間違い無さそうですね。
どこかのページで「常識」なんて書かれてあったので、驚いていました!
(聞いてねぇよ〜状態!)

お手数をお掛けしました。ありがとうございました。 m(_ _)m


29 :NAME IS NULL:05/02/14 20:25:01 ID:???
PHP+MySQLでも行末セミコロン通るぞ。

だからといって、
・PHPの行末セミコロン
・シェルスクリプトの行末セミコロン
・C言語の行末セミコロン
・SQLの行末セミコロン
が全て共通の規約だと思っている時点でオワッテルと思うが。


30 :NAME IS NULL:05/02/14 20:45:29 ID:???
MySQLが実装する";"を解釈するパーサジェネレータのソースコードを見れば即解消だな

31 :NAME IS NULL:05/02/14 20:49:53 ID:???
MySQLが動作しない環境ってありますか?

32 :NAME IS NULL:05/02/14 21:09:59 ID:???
>>31
SEE MySQL Reference Manual 2.2.6 and 2.6

33 :NAME IS NULL:05/02/14 21:14:42 ID:???
>>31
ある。少なくてもウチのポケコンでは動かない。

34 :NAME IS NULL:05/02/14 21:16:09 ID:???
>>29
そういうことじゃなくて、複数行クエリには対応して
いないんじゃない?ってことを言いたいのだと思う。

35 :NAME IS NULL:05/02/14 22:20:27 ID:Np6w1724
素人ですが、phpMyAdmin 2.6.1 について教えてください。

自分のPC(Windows XP Pro)に MySQLとPHP、Webサーバーにはテスト用に
Apache をインストールしました。
2年ぐらい前、phpMyAdmin 2.2.7 を利用したことがありましたが、既存のテーブルに
レコードを追加する場合、「新しい行の追加」というメニューがありそこから追加
することができましたが、2.2.7 にはそれらしきメニューが見当たりません。

どなたか、ご存知の方既存のテーブルにレコードを追加する方法を
教えていただけますか。

それと phpMyAdmin 2.6.1の解説書やWebサイトがあれば教えてください。
(公式はなんだかごちゃごちゃして分かりづらいです)


36 :NAME IS NULL:05/02/14 23:30:19 ID:???
phpMyAdminでググれば君の疑問は解消されるであろう

37 :NAME IS NULL:05/02/14 23:38:54 ID:???
>>35
>どなたか、ご存知の方既存のテーブルにレコードを追加する方法を
データベース選択して、テーブル選択すると
一番上に「追加」ってリンクメニューが出てくるでしょ

>それと phpMyAdmin 2.6.1の解説書やWebサイトがあれば教えてください。
ない。いじり回して体で覚えなさい。
phpMyAdminはバージョンアップの頻度が高いから、解説書いてもすぐに古くなってしまう。

38 :NAME IS NULL:05/02/15 00:17:06 ID:s+Y66ik4
phpMyAdminの特権につきましてお願いいたします。
ローカルサーバーにphpMyAdmin-2.5.7-pl1をインストールして
テストしていたところ「特権無し」と表示されデーターベースの
新規作成ができなくなってしまいました。
apache、phpMyAdminとも再インストールしましたがダメでした。
どこを再設定すればよいのでしょうか。
環境はwin2000 service Pack4です。
よろしくお願いいたします。




39 :NAME IS NULL:05/02/15 00:49:54 ID:???
>>38
phpMyAdminのconfig.inc.phpファイルを開いて
$cfg['Servers'][$i]['user']に「root」
$cfg['Servers'][$i]['password']にrootのパスワード
を指定しなさい

40 :NAME IS NULL:05/02/15 01:21:36 ID:???
>>37
>phpMyAdminはバージョンアップの頻度が高いから、
>解説書いてもすぐに古くなってしまう。

だよね。俺も初心者向けに(自分じゃ使ってもいないのに、仕方なしに)
スクリーンショット貼り貼りの資料作ったんだけど、あっという間に陳腐化した。

41 :NAME IS NULL:05/02/15 01:49:37 ID:???
note that DO 'chmod 400 config.inc.php'.

42 :NAME IS NULL:05/02/15 02:24:09 ID:???
>>41
>環境はwin2000 service Pack4です。

43 :NAME IS NULL:05/02/15 03:38:31 ID:s+Y66ik4
>>39さんありがとうございます。
$cfg['Servers'][$i]['user']
$cfg['Servers'][$i]['password']
 の書き換えは行っていましたし、再インストールしてこの個所も書き換えた
のにうまくいきませんでした。最初にインストールしますとデフォルトの特権
が指定してありますが、おそらくこれを削除したのか書き換えたのだと思います。
 設定に関しましてもう一点不明なことがあります。正常に動いているときか
らですが、phpMyAdminのconfig.inc.phpの
$cfg['Servers'][$i]['host'] = 'localhost';
のhostをlocalhostに書き換えると動作しませんでした。host以外はだめでした。
 PHP、apache、phpMyAdminの再インストールで元に戻らないので、私の残さ
れた対処法はOSごとの再インストールですが、いろいろと時間がかかるの
で、できればそれは避けられたらと思います。使用ソフトのバージョンは次の
とおりです。
apache 2.0.39
MySQL 4(細かいverは?です。どこで確認できるのでしょうか)
phpMyAdmin 2.5.7-pl1
PHP 4.2.2
アドバイスよろしくお願いいいたします。

44 :NAME IS NULL:05/02/15 03:42:43 ID:qoH68y+6
基本的なことで悪いが
まぁ初心者でレン鯖使ってる奴はくれぐれも生パス情報書いてある
設定ファイルのパーミッションを間違いないようにしろよ。

特に問題ないならconfは600ぐらいにしとくべし。

45 :NAME IS NULL:05/02/15 04:25:22 ID:???
>>43
> MySQL 4(細かいverは?です。どこで確認できるのでしょうか)
% mysql --version

46 :NAME IS NULL:05/02/15 07:34:27 ID:???
cygwin 版って無いのか……
ググって集めた情報で make してみたが、どうにも作れなかった orz

47 :NAME IS NULL:05/02/15 20:24:48 ID:???
>>43
間違いなくrootのアカウントを指定したんですよね?
rootなら自分の権限を自分自身で変えられるはずだけど…

phpMyAdminの初期画面に「特権」てあるでしょ?
そこ見てrootの権限書き換えてみたら?

48 :NAME IS NULL:05/02/15 23:33:46 ID:???
4.1.10

49 :NAME IS NULL:05/02/16 01:43:21 ID:???
4.0最高!
4.1はバカ!

50 :NAME IS NULL:05/02/16 05:42:15 ID:???
>>49
まぁ、同意

51 :NAME IS NULL:05/02/16 09:07:48 ID:wZt+xKmc
php4.2.2
mysql4.0.23
phpMyAdmin2.6.1で
「扱えない拡張子のファイルです 」
と出てきてしまいます。
phpmyadminをおいてあるディレクトリでphpinfoとかは表示させられるので
原因がよくわかりません。よろしくお願いします。



52 :NAME IS NULL:05/02/16 10:41:01 ID:???
ITmedia エンタープライズ:MySQL、法人向けにもGPLを採用へ――料金体系も一新
http://www.itmedia.co.jp/enterprise/articles/0502/15/news107.html

違う〜。欲しいのはGPLじゃなくて、CMLの簡素化/低価格化の方だって...

53 :NAME IS NULL:05/02/16 11:21:23 ID:???
法人向けにGPL用意したってのはねぇ・・・

54 :NAME IS NULL:05/02/16 12:37:23 ID:???
俺いつも、GPLで分からなくなるので教えてください。
・MySQLを使ったシステムを顧客に売る
・MySQL自体はバイナリを使うだけで、改変とかは一切なし
・システムはRDBMSとしてMySQLを使っているだけだが、
 細かいSQLの互換性なんかがあるから、MySQLがないと
 動作しないシステムと考えてよい
・システム開発の費用を顧客からもらうが、
 MySQL自体を販売はしているわけではない。
・でもシステム導入の費用はもらって、ダウンロードしたMySQLの
 セットアップを請け負う
・納品物としては、MySQLはつけないでシステム本体のバイナリと
 ソースを顧客に納品する
・顧客向けのシステムなので、ソースコードを一般に公開はしない

これによると、
http://www.softagency.co.jp/products/mysql/process.html
「そのソフトの改変と再配布を無制限に誰にでも許可しますか?」
⇒Noなので、CMLにしなければならないの?

例えば、これが自社内システムならGPLでOK?
もしくは、MySQLでなくとも一般的なRDBMSならOKなつくりにすればOK?


55 :NAME IS NULL:05/02/16 12:53:32 ID:???
一応社内のみのシステムならOKだけれども、GPLのソフトが社外に
持ち出されるのを止めれるのかどうかとか問題は多い希ガス

56 :54:05/02/16 13:20:45 ID:???
>>55
>一応社内のみのシステムならOKだけれども、
それは、
>>例えば、これが自社内システムならGPLでOK?
こっちのことに対するOKですか?

それとも、一番最初に長々と書いた条件でも「CMLの必要なし」という意味でしょうか?
補足すると顧客の社内向けシステムと考えた場合です。

もちろん、仮想のケースを書いているだけなので、
あなたに「ライセンス違反じゃないよね?」って確認と責任を求めているわけではなく、
見解を聞きたいだけなのですが。

57 :NAME IS NULL:05/02/16 13:22:37 ID:???
現在postgresを会社で使用しているのですが
社長命令でMySQLも入れろといわれてしまいました_| ̄|○
で、いれようと思うのですが、postgresが既に入っている
サーバーにmySQLをいれて、同時に起動させてた際に
問題になる事や弊害はなにか有るのでしょうか?
googleなどで調べてみたのですが、それらしいサイトを
見つけることが出来ませんでした…(多分調べ方がわるいんだろうな)
そこでどなたか、そういうことをやられた事がある方
もしくは該当するようなサイトを教えてもらえませんか?

58 :NAME IS NULL:05/02/16 13:29:24 ID:luFECCIC
>同時に起動させてた際に
>問題になる事や弊害はなにか有るのでしょうか?
ない
ポスグレとMySQLのメモリ使用料だけ頭にいれとけ

59 :NAME IS NULL:05/02/16 13:41:00 ID:???
phpMyAdmin のドキュメントってコレ?
http://www.phpmyadmin.net/pma_localized_docs/Documentation_ja.html

60 :NAME IS NULL:05/02/16 14:07:43 ID:???
>>57
別に問題ないよ。
外からPort使って繋げるなら重ならないように注意するぐらい。
まあ、それも両方ともデフォルトなら重なることもない。

61 :NAME IS NULL:05/02/16 14:11:22 ID:???
>>54
どうやってMySQLに繋がってるかが不明。そこのところが重要。
あと最新のクライアントライブラリはPDS/LGPLじゃなくて、GPLだってことも。



62 :54:05/02/16 14:31:54 ID:???
>>61
返答ありがとう。なるほどクライアントライブラリが関係してくるわけですね。
MySQL本体は4.0.23として。

ケース1
 Connector/ODBC 3.51をつかって、Excelからデータ取得したりしている。
 GPLであって、ソフトはConnector/ODBCを使わないと動作しない。
 ⇒顧客に配布するにはCML必要?

ケース2
 でも実は、ODBC経由であれば動作するので、Connector/ODBCである必要はない。
 「このExcelアプリは、ODBC経由で接続できるDBならOKですから、
 適切なDBとODBCドライバを用意して、使ってください」と名目上の理由をいってアプリを売る。
 顧客は社内向けに自身でMySQLとConnector/ODBC 3.51を選択した。
 セットアップは請け負った。⇒こっちはCML不要?

JDBC接続も同様。 こんな考えはどうなんでしょうか?

63 :NAME IS NULL:05/02/16 14:54:53 ID:???
>>58
>>60
ありがとうございます
これで心起きなく使用できます。

64 :NAME IS NULL:05/02/16 18:23:58 ID:???
>>62
本来、後者なら回避できそうなんだけど、
http://pc5.2ch.net/test/read.cgi/db/1056943680/668-680
にあるようにMySQL的にはMySQLを使って再配布されたくないものは
CMLとれというのが基本方針だからなぁ。

下手な方便つかって回避策考えないといけないようなら、素直に
PostgreSQLを使うべきでは?

65 :NAME IS NULL:05/02/16 19:05:42 ID:???
素直に買うべき、とも言える罠

66 :NAME IS NULL:05/02/16 19:26:01 ID:???
にしても、新規の案件っぽいのに4.0を前提に作るっていうのは
いまさらどうよ。いくら4.1がアレだからといって、5.0でも今の
仕様は受け継がれていくわけで。

67 :54:05/02/16 19:53:33 ID:???
>>64
なるほどありがとう。

>下手な方便つかって回避策考えないといけないようなら、
>PostgreSQLを使うべきでは?

別にいま使おうと選定に迷っているわけでなく、
MySQLを使うときのライセンスについて知りたかっただけ。

サンクスです。

68 :NAME IS NULL:05/02/17 00:14:41 ID:???
>>66
5.0ってどうなん? 今4.0なんだが。

サブクエリが使えるとか、拡張されてる分は見りゃわかるんだが、
安定度や、パフォーマンスとか、管理面とかは公式にも比較資料が見当たらない。

5.0勧める以上は、数ヶ月くらい使い込んだ感想なんかを聞かせて欲しいんだが。


ライセンスに関しては、具体的事例を示して解説するページくらい作って欲しいな。公式に。
まぁ、高いなら高いで他DBも視野に入って来るから、そんな無茶な話にはならないとも思うが。


69 :NAME IS NULL:05/02/17 01:12:35 ID:???
>>68
windows版で4.1、5.0使うのはチャレンジャーつか人柱だとだけ。

70 :NAME IS NULL:05/02/17 01:34:09 ID:???
5.0はまだ開発途上ベータ版でしょ
4.1は5.0の機能を一部先取りバージョン
4.0は安定した枯れたバージョン

71 :NAME IS NULL:05/02/17 07:17:31 ID:???
>>51
WindowsXP/php5.0.3/mysql4.1.9/phpMyAdmin2.6.1で同じ様になってた。
http://allabout.co.jp/career/database/closeup/CU20040928A/index.htm
を見てlibmysql.dllっていうのをC:\Windows\system32内にコピペして、
php.iniをいじったらうまくいきました。PHP4だとこっちかな。
http://allabout.co.jp/career/database/closeup/CU20031114/index.htm



72 :71:05/02/17 07:35:21 ID:???
↑でうまくいったと書きましたが次の段階でエラーが出て困っております。
ttp://localhost/略/phpMyAdmin/index.phpを開きユーザー名とパスワードを
入力すると

Fatal error: Call to undefined function PMA_reloadNavigation() in
D:\Apache/略/phpMyAdmin/header.inc.php on line 132

というエラーが3箇所に出てうまく表示されません。
原因分かる方、教えてくださいm(__)m




73 :71:05/02/17 08:20:48 ID:???
すいません。自己解決しました。
http://sourceforge.net/tracker/index.php?func=detail&aid=1111855&group_id=23067&atid=377408
ここに載っていました。

74 :NAME IS NULL:05/02/17 11:29:57 ID:???
>>72-73
MySQL4.0→MySQL4.1での文字コート絡みの変更で
phpMyAdminの場合、結果としてそんなエラーとして現れるんだね。
改修されたみたいだけど、覚えとこ。

75 :NAME IS NULL:05/02/19 13:25:10 ID:N/12/J4L
Windows上のGUIクライアントからLinux上のサーバに接続する際の
文字化けについて質問させてください。

現在、以下の環境でMySQLのGUIクライアントを色々試しています。

[サーバ]
OS:Fedora Core 3

MySQL:4.1.9


76 :75:05/02/19 13:26:32 ID:N/12/J4L
すみません、途中で送ってしまいました…orz

ちゃんと書いて出直してきます…。

77 :75:05/02/19 13:36:28 ID:N/12/J4L
Windows上のGUIクライアントからLinux上のサーバに接続する際の
文字化けについて質問させてください。

現在、以下の環境でMySQLのGUIクライアントを色々試しています。

[サーバ]
OS:Fedora Core 3
/etc/sysconfig/i18nを以下に変更
LANG="ja_JP.eucJP"
SUPPORTED="ja_JP.eucJP:ja_JP:ja"

MySQL:4.1.9
/etc/my.cnfで以下を追記
[mysqld]
default-character-set = ujis
[client]
default-character-set = ujis
[mysql]
default-character-set = ujis

[クライアント]
OS:WindowsXP SP2
試したソフトウェア:
Navicat2004(試用版)⇒日本語が文字化け
MySQL Query Browser⇒日本語が文字化け

具体的には、Blob型、text型のフィールドに上記クライアントから
データを入れると、文字化けするという現象です。また、サーバ側
のプロンプトから日本語入力をすれば大丈夫なのですが、クライアント
からそのデータを見ると文字化けします。

Navicatには、サーバーの接続設定でEncordが選べるようになっており、
そこで「EUC」を指定しても変わらないみたいです。Query Browserの
方は、そもそもそういう設定が見当たりません。

もし、上記クライアントをEUC環境で使えている方がいらっしゃいましたら
設定方法等ご教授いただきたく、お願いいたします。

78 :NAME IS NULL:05/02/19 15:31:06 ID:???
FedoraはOSの標準文字コードがUTF8じゃなかったか?
サーバ側のプロンプトから入力して正常ってことは、UTF8の文字コードをDBに放り込んでる可能性が高い。
しかも、mysqlの設定がUTF8になっていない。

二重・三重に文字コードの扱いを間違ってるに一票。


79 :NAME IS NULL:05/02/19 15:45:44 ID:???
>>78
それは設定しなおしてるみたいだから、他へ影響は置いておけば
MySQL絡みのところとは関連しないと思うよ。

MySQL4.1.xのサーバとクライアント間のエンコーディング変換の
問題が関係してると思う。MyNAのFAQ参照して設定してみては?


80 :NAME IS NULL:05/02/19 16:37:54 ID:???
むしろMySQL4.1はUTF8が楽なんだけどな

81 :78:05/02/19 16:59:01 ID:???
あ、ほんとだ。
i18n書き換えているのか。
見落としていたスマン。


82 :75:05/02/19 17:22:31 ID:N/12/J4L
>>78-81

レスdクスです。

MyNAのFAQ読んできました。おおむね理解できました。

>>80さんが仰るとおり、自分もUTF8にしといた方が楽
なような気がしてきました。

VirtualPC上に開発環境組んでいるので、とりあえず
今の環境はおいといて、UTF8環境を作って試してみる
ことにします。

既存のリソースがEUCなので、安易にEUCにしてみたん
ですが、考え直す必要がありそうです。

それにしても、4.1からえらい変わりましたね。
自動変換はどうにかならんのだろうか…。

後で結果報告しに来ます!ありがとうございました!

83 :NAME IS NULL:05/02/19 20:11:50 ID:???
QueryBrowser自身はUTF8固定。
WinのIMEがquery browserに
どういうコードを送っているんだろうか? sjisか?
だったらsjisをutf8として扱う時点でQBはアウト。
つかえねー

84 :NAME IS NULL:05/02/19 22:14:37 ID:???
Navicatは単にblob,texgtを(MEMO)って表示にしてるだけじゃない?
コピペしたら値がわかるけど。
鯖がujisならnavicatのエンコードはEUCね。


85 :75:05/02/20 02:43:09 ID:8ytzqIR+
>>78-81
>>83-84

レスありがとうございます。>>75です。
サーバーをUTF8で構築したんですがどうもうまくいかず、
Apache + PHP + MySQL を最初から自前でmakeして、やって
みました。

先と同じくEUCで統一してやったのですが、結果は
QueryBrowserもNavicatも化けずに見れました!
ってか、MyNAに書いてあったことがやっとわかりました。

>>83さんがおっしゃる通りQBでダンプを見るとutf8になって
ましたね。でも見れるってことは、きちんとeucにして
送ってるってことなのかな?

ってなわけで、ご報告でした。皆さんありがとうございました。


86 :NAME IS NULL:05/02/20 22:27:46 ID:???
現在、MySqlとPerlとに奮闘中なんです。

今作ろうとしてるのは、サイトメンバー情報のDB化及び検索の機能みたいなものです。
それらはMySqlを使って作ろうとしてます。

さて、付随する掲示板とか日記とか作るとしたら、
パフォーマンスを考えた場合、
それらのデータもDBに突っ込むべきか、
それともテキストファイルに書いて、読み出すコードを書いたほうがいいか悩んでます。
DBに突っ込むと、余計な処理のために重くなりそうな気がしてます。
どうでしょう?


87 :NAME IS NULL:05/02/20 23:22:05 ID:???
DBI::mysql

88 :NAME IS NULL:05/02/21 16:54:30 ID:???
>>86
まず、WebサーバとMySQLサーバは同じマシンなのか、
自鯖なのかレンタルか、
さらにmod_perlは使うのかどうか、
書いてくれ。

89 :NAME IS NULL:05/02/21 22:34:17 ID:???
1つのデータベースにたくさんテーブルがあるとして、
そのなかから、あるフィールドをもつテーブルを抽出するにはどうすんの?




90 :NAME IS NULL:05/02/21 23:54:24 ID:???
>>89
>>1

91 :86:05/02/22 00:01:31 ID:???
サーバーはレンタルの共用です。
DBサーバーは別ですが、これもまた共用です。
mod_perlは今のとこ考えてません(使ったことがないし、利用不可のため)。

今やってるのサイトでは、すべてのデータをテキストで保存し、
Perlを使ってゴリゴリに読み書きするコードを書いてます。
パフォーマンス的には問題ないです。

でも、それだけでは面白くないので、再構築を考えているんですが、
複数のファイルを読むには、やっぱりSQLを使ってJOINさせたほうが断然楽だし、
いろいろな見せ方ができそうなので、MySqlのあるレンタルサーバーを契約しました。

DBがあるとは言え、ほとんどテキストデータである掲示板や日記まで
DBに突っ込んでもよいものかと思ってる次第です。

なお、SQLを使用したいものについて、現在のサイトのデータを使ってテストしてみました。
データ件数は、300件のテーブル3つと4000件テーブル1つ。
この程度なら速度的には問題なさそうですが、
今後データ件数が増えると、重くなりそう。




92 :NAME IS NULL:05/02/22 15:23:56 ID:???
>>91
DB がその程度で重くなるわけないっしょ。安心しろ。
重ければそれは設計か、コードがおかしい。

93 :NAME IS NULL:05/02/22 15:52:06 ID:???
>>91
>ほとんどテキストデータである掲示板や日記まで
>DBに突っ込んでもよいものかと

じゃぁ、何を突っ込む気だ?

94 :NAME IS NULL:05/02/22 16:46:54 ID:???
ロリポかさくらだろ

95 :86:05/02/22 22:20:08 ID:???
>>92
今んとこその件数だからそのとおり。
将来はかなり増やす予定。

>>93
DBに入れたいのは、メンバーの情報。複数のテーブルをJOINしたいから。
テキストでやろうと思っているのは、掲示板や日記。

たとえば掲示板だけで1テーブルにした場合、莫大な件数になりそうかと。
その点、テキストファイルなら、スレッドごとにファイルを分ければ
かなり軽くアクセスできると思っとります。
DBでも、インデックスとかきっちりやれば、全然軽いのかな。
我流でやっとるんで、一般的な手法がどうなのかあまり分からないっす。

>>94
鋭い。


96 :NAME IS NULL:05/02/22 22:53:08 ID:???
Windows版 4.1 の mysqld-max-nt のスレッド数が1万5千以上もあるんだけど、これって普通?

97 :NAME IS NULL:05/02/22 23:39:30 ID:???
>>96
それは全然普通じゃないが、そのスレッド数ってのは
どうやって調べた(コマンドやその結果の何から)の?

98 :NAME IS NULL:05/02/23 00:46:22 ID:???
>>97
タスクマネージャで見れるやつでないか?

99 :96:05/02/23 02:23:01 ID:???
>>98 のおっしゃる通りタスクマネージャです。
立ち上げただけでその数になるので、ちょっと気になったので質問しました。

……普通なのかな?

100 :NAME IS NULL:05/02/23 04:24:00 ID:???
>>99
タスクマネージャで見ると
mysqld-max-ntという名前の「プロセス」が
だーっと1万5千行以上も列挙されるってこと?

因みにWindowsはNT/2000/XPの何?
再現確認できるようならやってみるので。

101 :NAME IS NULL:05/02/23 10:19:32 ID:gvfioclR
postgresqlからの移行でexceptの変換にとまどっています。
違うテーブルであれば LEFT JOIN が使えるのですがどうすれば良いのでしょうか?

select name from w where date < '10:10'
except select name from w where date < '10:20' ;

102 :NAME IS NULL:05/02/23 12:00:16 ID:???
>>100
タスクマネージャで列を設定すれば、プロセスに対するスレッド数が見れる

103 :NAME IS NULL:05/02/23 16:29:59 ID:???
>>95
>DBに入れたいのは、メンバーの情報。複数のテーブルをJOINしたいから。
>テキストでやろうと思っているのは、掲示板や日記。

敢えてテキストファイルも使うなら、普通は逆のような気がするが…

まぁ、結局どうやってデータ保持しようが、
フロントの作りがタコなら、結局はこける。

104 :NAME IS NULL:05/02/23 16:43:18 ID:???
えぇと、レコード毎に被問い合わせの数を記録しておいて
任意の期間でその数の多さでテーブルをリファクタリングしたい。
具体的にはURLのカラムを対象にして踏んだ数のランキング100ごとの
テーブルを自動生成する。このSQL文の例で助言求む。MyISAMで。

105 :NAME IS NULL:05/02/23 18:17:50 ID:???
>>104
前提として存在するテーブルはなんなんだ?

106 :NAME IS NULL:05/02/23 20:25:59 ID:???
>>102
さんきゅ。そんな設定で見られるとは知らなかった。

MySQL4.1.10-max-ntでやってみたけどMySQL4.0.23-max-ntと同じだね。
通常13ぐらいで、接続毎に1増えるけど接続断でちゃんと減ってるし。
異常切断があったとしてもタイムアウト処理で正常に消えてる。
(スレッドキャッシュは0で確認)

どっちにしても起動直後から相当な数が上がってるというのは
異常としか思えない。

107 :106:05/02/23 20:26:53 ID:???
試したのは、WindowsXP PRO SP1

108 :96:05/02/23 20:41:55 ID:???
>>106
どうもです。
間違えてました。スレッドじゃなくてハンドルの方でした m(_ _)m
4.1.9-nt-max + Win2kprosp4 です。
OS ごと再起動しても、毎回 15,461 以上になります (情報が小出しになっちゃってすみません)
使ってて問題なさそうなので、とりあえず気にしないことにします。

109 :NAME IS NULL:05/02/23 22:58:57 ID:???
SQL*Plusをインストールしたんですが、改行が変なとこでされてて非常に見えにくいです。
どうやったら直せるんですかね?
トライアル版では無理なんでしょうか。
ご存知の方いたら教えて下さい。お願いします。

110 :86:05/02/23 23:03:08 ID:???
>>103

◇メンバー情報
A,B,Cテーブル:約280件
Dテーブル:約4200件
Eテーブル:約280件

A:B:C:Dは、1:1:1:n で、
A:Eは、n:1の関係。
なので、コードでJOINさせるのがめんどいし、
検索・ソート機能が充実させにくいので、DBで管理したい。


◇掲示板、日記
掲示板スレッド数:約160件
掲示板レス数:約1800件
日記利用者数:約160人
日記件数:約3500件
日記レス件数:約11000件

掲示板のレスデータはスレッド毎にファイルを分割。
日記データ、日記レスデータは、それぞれ利用者ごとにファイルを分割。
JOINも不要で、ソートも必要ないので、コードで書いても手間はかからない。


いずれも、再構築後は10倍に増やしたいと考え中。
いかがなもんでしょうか?


111 :NAME IS NULL:05/02/23 23:06:22 ID:???
その程度でDBが重くなると考えるのはあふぉだな

112 :NAME IS NULL:05/02/24 00:17:39 ID:???
数百万件くらい余裕

113 :NAME IS NULL:05/02/24 00:29:40 ID:???
まぁ、2chはテキスト保存だったりするわけだが…

114 :86:05/02/24 00:31:25 ID:???
上の「◇メンバー情報」のデータで今まさにテストしてるんですが、
一瞬で帰ってくるときもあれば、数秒待たされるときもあります。
だから気にしてます。
DBが共用だから待たされてるってことなのかな。


115 :NAME IS NULL:05/02/24 00:39:58 ID:???
>>114
ユーザー毎にCPUパワーまでパーティショニングして運用しているわけじゃないだろうから、
その辺はある程度はしょうがないでそ。

116 :NAME IS NULL:05/02/24 01:03:18 ID:???
たのユーザーのSQLがインデックスはってなくて全件検索はいってるとかあるとこわいな

117 :NAME IS NULL:05/02/24 01:22:55 ID:???
同人を一冊一冊MySQLに入れたいのですがどういったテーブルを作ればいいのでしょうか?
同人は平均150KBのjpgファイルが10-50枚が1単位(冊)です。見るときはこの1単位毎にします。

118 :NAME IS NULL:05/02/24 01:31:33 ID:???
普通にディレクトリ掘ってファイルシステムに入れとけ

119 :NAME IS NULL:05/02/24 01:38:06 ID:???
どうしてもMySQLに突っ込みたいのです。パスもかけれますし…
バラの(jpg|gif|png)とかもMySQLにいれて保護したいのです。
MD5のユニークインデックス使えば複重を弾けるらしいので(=゚д゚)ウマー

120 :NAME IS NULL:05/02/24 02:27:53 ID:???
本箱テーブル:(本ID、ページ番号、画像データ) 主キー(本ID、ページ番号)
使いたければ、MD5ハッシュも入れろ。

121 :NAME IS NULL:05/02/24 12:23:55 ID:???
バイナリデータ入れたら、入れるときも、見るときも
プログラムでも使わないとだめだから、面倒だと思うけど。(クエリじゃ無理だよな?)

他のデータと共に一元管理したいなら分かるけどさ、(ユーザ情報+顔写真とか)

122 :NAME IS NULL:05/02/24 14:36:35 ID:x9bV7eQL
質問させていただきます。
例えば下の様な2つのテーブルから、SELECT 文で
「『ある食堂(単・複)のうまいメニューが属するジャンル』が好物な人物」
を検索するにはどうすればいいでしょうか?

●「好物」テーブル
+------+----------+
| 人物 | ジャンル |
+------+----------+
| 太郎 | ごはん類 |
| 次郎 | ごはん類 |
| 三郎 | めんるい |
| 四郎 | めんるい |
| 五郎 | どんぶり |
+------+----------+

●「食堂」テーブル
+----------+----------+--------+--------+--------+
| ジャンル | メニュー | A食堂 | B食堂 | C食堂 |
+----------+----------+--------+--------+--------+
| ごはん類 | 玉子ご飯 | マズイ | マズイ | マズイ |
| ごはん類 | お茶づけ | マズイ | マズイ | うまい |
| ごはん類 | おむすび | マズイ | マズイ | うまい |
| めんるい | ラーメン | うまい | マズイ | マズイ |
| めんるい | タンメン | うまい | マズイ | マズイ |
| めんるい | ソーメン | うまい | マズイ | うまい |
| どんぶり | カツどん | マズイ | マズイ | マズイ |
| どんぶり | テンどん | マズイ | うまい | マズイ |
| どんぶり | 親子どん | マズイ | マズイ | マズイ |
+----------+----------+--------+--------+--------+

例えば「A食堂またはB食堂でうまいメニューが属するジャンル(めんるい&どんぶり)」が好きな人物
を検索して

+------+
| 人物 |
+------+
| 三郎 |
| 四郎 |
| 五郎 |
+------+

という結果を得たいのです。
MySQL のバージョンは 4.0.23 です。
よろしくお願いします。

123 :NAME IS NULL:05/02/24 14:56:09 ID:???
五郎君の好物で「うまい」ものはテンどんだけか。
カワイソウ(´;ω;`)ウッ…

内容ないのでsage

124 :NAME IS NULL:05/02/24 15:58:26 ID:???
どこの食堂も同じメニューが必ずあるのか?


125 :NAME IS NULL:05/02/24 17:01:31 ID:???
日替わり定食=残飯処理

126 :NAME IS NULL:05/02/24 18:28:25 ID:???
暇だからやってみた。
サブクエリ使わない場合は、TEMPORARY TABLE使って、こんな感じかな?

********************
環境の準備
********************
create table koubutsu(
hito varchar(20),
genre varchar(20),
primary key(hito)
);
create table shokudou (
genre varchar(20),
menu varchar(20),
a char(1),
b char(1),
c char(1),
primary key(genre, menu)
);
insert into koubutsu values
('太郎', 'ごはん類'),
('次郎', 'ごはん類'),
('三郎', 'めんるい'),
('四郎', 'めんるい'),
('五郎', 'どんぶり');

insert into shokudou values
('ごはん類', '玉子ご飯', 'x', 'x', 'x'),
('ごはん類', 'お茶づけ', 'x', 'x', 'o'),
('ごはん類', 'おむすび', 'x', 'x', 'o'),
('めんるい', 'ラーメン', 'o', 'x', 'x'),
('めんるい', 'タンメン', 'o', 'x', 'x'),
('めんるい', 'ソーメン', 'o', 'x', 'o'),
('どんぶり', 'カツどん', 'x', 'x', 'x'),
('どんぶり', 'テンどん', 'x', 'o', 'x'),
('どんぶり', '親子どん', 'x', 'x', 'x');

以上、準備。

create TEMPORARY TABLE tmp (
select distinct genre from shokudou
where a = 'o' or b = 'o'
);
select hito from koubutsu, tmp
where koubutsu.genre = tmp.genre;
drop table tmp;

食堂はA,B,C以外も増えそうだから別テーブルにした方がいいよね。


127 :NAME IS NULL:05/02/24 20:32:43 ID:???
Perl や PHP を使わずにバイナリデータをテーブル(のBlob型カラム)に挿入できますか?

128 :NAME IS NULL:05/02/24 21:24:58 ID:???
WinXP+MySQL4.0.23なのですが、レプリケーションのスレーブを設定すると
OSのイベントビューアにエラーが出ます。
シャットダウンと起動とレプリケーション起動のフツーのメッセージが、
例の赤いバッテンとともに追加されてくんですが、これって普通ですか?
・全ての動作は異常ない(レプリケーションもちゃんとしてできてる)
・レプリケーションを殺すとエラーが出なくなる。
・MySQLの再インストールしても変わらん。
・マスター側はイベントビューアには全然ログを出さない。
うーむ・・・


129 :NAME IS NULL:05/02/24 21:54:56 ID:???
>>127
できないこともない。


130 :NAME IS NULL:05/02/24 22:07:00 ID:???
>>129
是非とも教えてください
ググってもありませんでした

131 :NAME IS NULL:05/02/24 22:10:47 ID:???
>>127
できる


132 :SQLビギナー:05/02/24 23:18:53 ID:miHwNeG8
PostgreSQLからMySQLに移行したらMySQLのバージョンが古くて、
サブクエリが利用できないことが判明しました。
以下のSQL文をサブクエリなしで表現したいのですが、
どなたかご教授頂けないでしょうか。

select g.proid,g.gono,g.cateno,g.itemno,
catename,itemname,gname,gnameh,kakaku1,
ktanni1,kakaku2,ktanni2,kakaku3,ktanni3,
jika,rakuten,proname,picname,picno
from t_goods g
left join m_productor p on (g.proid = p.proid)
left join m_item i on (g.cateno = i.cateno)
and (g.itemno = i.itemno)
left join m_category c on (g.cateno = c.cateno)
left join (select proid,gono,picno,picname from t_picture where (proid,gono,picno) in
(select proid,gono,min(picno) from t_picture group by proid,gono)) as pct2
on (g.proid = pct2.proid)
and (g.gono = pct2.gono)
where g.cateno = 4
and g.itemno = 11
order by gnameh,picname;

よろしくお願いします。


133 :NAME IS NULL:05/02/24 23:25:26 ID:???
>>132
お前の仕事の手伝いなんぞ嫌だ

134 :NAME IS NULL:05/02/25 00:08:36 ID:???
>>132
何この丸投げ

135 :NAME IS NULL:05/02/25 01:02:22 ID:???
>>122
は、
>>126
も言っているとおり、正規化すべきだと思う。

また、「好物テーブル」 における「人物」が
「好物」をひとつしか選択できないのはどうかと。
これも正規化するといいかな。

例えた事象だから、本当のところはどうかわからんけど。


>>132
教授は頂けない。


136 :NAME IS NULL:05/02/25 01:07:26 ID:???
正規化ってどうするの?
属性別にテーブル設けて各テーブルにインデックスカラムを付けるだけなの?

137 :NAME IS NULL:05/02/25 01:25:35 ID:???
>>136 プログラマ的に気持ちよく分割されてればおk

138 :NAME IS NULL:05/02/25 01:40:58 ID:???
>>136
http://hccweb1.bai.ne.jp/~hdg93401/sad/db/seikika.html

食堂テーブルにある、ジャンルはメニューに従属しているから、分割とか。

139 :122:05/02/25 13:14:06 ID:z4T9Kjr8
>>123 >>124
まぁ例えなんで深くは考えずに

>>126
ちゃんとできました。
ご教授ありがとうございます!

>>135
アドバイスありがとうございます。
参考にさせていただきます。

140 :NAME IS NULL:05/02/26 00:07:27 ID:jOGQTQaN
ASP.NETでウェブ・アプリ作ってる方に聞きたいんですが、
MySQLに接続するために必要なAPIあれば教えてください。
ASP.NET on IIS with MySQL (or PostgreSQL) という構成です。

141 :NAME IS NULL:05/02/26 00:32:18 ID:???
>>140
http://www.mysql.com/products/connector/net/

142 :NAME IS NULL:05/02/27 00:36:56 ID:w+A6RWPj
ファイルにdrop文とcreate文を書いて実行したいのですが、
drop文で「Unknown table 'テーブル名'」と言われてしまい次のcreate文に移りません。
確かにそんなテーブル無いのですが、再作成のために書いておきたいのですがどうしたらいいですか?

143 :NAME IS NULL:05/02/27 01:13:49 ID:???
そこで止まることは無いと思うが。

144 :142:05/02/27 01:21:41 ID:w+A6RWPj
>>143
mysql -u root -ppassword -t testdb < test.sql
で実行してるのですが、
やっぱりUnknown table 'test_table'と言われて止まってしまいます。
ためしにcreate文でtest_tableを作ってから実行したらちゃんと実行されました。
postgreではエラーが出ても続行されたんですが・・・。
しょうがないんですかね。

145 :NAME IS NULL:05/02/27 01:26:59 ID:IfrbtRcK
>>142

IF EXISTS

http://dev.mysql.com/doc/mysql/ja/drop-table.html


146 :142:05/02/27 03:51:35 ID:w+A6RWPj
>>145
おお、これだ。
リファレンス本しか読んでなかったのがいけなかったみたいです。
反省します。ありがとうございました。

147 :NAME IS NULL :05/02/27 12:20:00 ID:mWXh/ugo
こんにちは。
PHP5+MySQLで練習をかねて資産管理を作っています。
まだ、登録・修正&削除・一覧表示をPHPで出来る所までしか
来ていないのですが・・・。
5つあるテーブルの4つまでは、何の問題もなく上記3つの
PHPページが出来たのですが、最後の一つのテーブルだけ
PHPから削除・一覧表示は出来たのですが、登録・修正だけが
MySQLのデーターベーステーブルに反映されません・・・。
コピペで作っているので、盆ミスでもなさそうな雰囲気なのです。

もしかして、カラム名に使ってはいけない文字ってありますか?
英小字一文字だと、駄目とかありますか?
よろしくお願いいたします。

148 :147:05/02/27 14:25:16 ID:mWXh/ugo
自己レスです。
すみません。
UNIQUE制約が邪魔していたみたいです。
お騒がせいたしました

149 :NAME IS NULL:05/02/28 18:39:12 ID:wLGA0zr7
mysqlについて質問なのですが、show processlistのコマンドを打つと、

mysql> show processlist;
+----------+-------+----------------------+-------+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+----------+-------+----------------------+-------+---------+------+-------+------------------+
| 33278669 | testd | 192.168.100.15:61610 | named | Sleep | 6358 | | NULL |
| 33301701 | testd | 192.168.100.15:63815 | named | Sleep | 5427 | | NULL |
| 33349421 | testd | 192.168.100.15:61724 | named | Sleep | 3511 | | NULL |
| 33353592 | testd | 192.168.100.15:54189 | named | Sleep | 3350 | | NULL |
| 33385893 | testd | 192.168.100.15:59342 | named | Sleep | 2130 | | NULL |
| 33441073 | root | localhost | named | Query | 0 | NULL | show processlist |
+----------+-------+----------------------+-------+---------+------+-------+------------------+

という結果が表示され、192.168.100.15からの接続でのsleep状態がずっと続いてるのですが、原因がわかりません。
他のサーバもローカルIPで接続してるのですが、192.168.100.15のサーバだけがsleepしています。
どなたかお助けください。

150 :NAME IS NULL:05/02/28 22:57:31 ID:s2lgItl0
Windows上のC++でODBCを使わずにMySQLをいじるには何が必要でしょうか?
(かねやんMySQLみたいな奴)

151 :NAME IS NULL:05/02/28 23:50:39 ID:???
>>150
MySQL++ってWindowsでも使えないんだっけ?


152 :NAME IS NULL:05/03/01 00:16:48 ID:???
>>151
使える。が、別に使わなくても繋げるしね。
もっと言えばDBMSぽく繋がないんだったら、
素のC++だけで、後は自前で作ってもなんとでもなるよ。

>かねやんMySQLみたいな
繋がりが良く判らん

153 :NAME IS NULL:05/03/01 00:32:00 ID:r4T/MZvg
MySQLのクライアント・サーバー間のプロトコルって公開されてるの?

154 :NAME IS NULL:05/03/01 00:56:41 ID:???
>>153
特に「プロトコル」って公開はされてはいないが
クライアントもサーバもソースは公開されてますんで
全然隠蔽されてませんよ。要するにアンドキュメントなだけ。

SSL通せば隠蔽はされますが、それとは別の話。

155 :NAME IS NULL:05/03/01 01:20:36 ID:???
>>153
see 4.2.3

156 :NAME IS NULL:05/03/01 13:16:51 ID:???
>>146

きちんとしたリファレンス本にはきちんと書いてあるぞ

157 :NAME IS NULL:05/03/01 13:27:54 ID:???
blobカラムに画像ファイルデータを挿入したんですけど
mysqlプロンプトから任意の画像ファイルデータを問い合わせて
任意の画像ビュアーにそのデータを渡して画像を閲覧するようなクエリをお教え下さいませ

158 :NAME IS NULL:05/03/01 14:51:32 ID:???
php.ini において、magic_quotes_gcp = on にしていれば、
SQLインジェクションに対して安全でしょうか?

やはり
mysql_real_escape_string() とか mysql_escape_string() とか addslashes を
使うべきでしょうか?

159 :NAME IS NULL:05/03/01 15:50:47 ID:???
そりゃPHPスレで聞くもんだべ

160 :NAME IS NULL:05/03/01 17:01:18 ID:4KnrU+VK
MySQLにてテーブルの形式だけを取り出したいのですが
mysqldump データベース名 > ファイル名
だとテーブルのデータもくっついてくるのでこれを取り除く方法はないのでしょうか?

161 :NAME IS NULL:05/03/01 17:34:14 ID:???
【環境】
RedHatLinux WS2.1
mysql-4.0.23(INNODB)

上記環境で使用しています。
動作自体は安定して稼動しているのですが
ibdata1が肥大化してHDDを圧迫するようになりました。
なにか良い方法はありませんでしょうか。



162 :NAME IS NULL:05/03/01 17:35:22 ID:???
>>160
マニュアルくらい読めよ
http://dev.mysql.com/doc/mysql/ja/mysqldump.html


163 :NAME IS NULL:05/03/01 17:45:58 ID:???
>>157
mysqlプロンプトはバイナリーセーフではない作りの気がする。
よって何らかのプログラムを組んでやらないと駄目かと。

164 :160:05/03/01 17:48:41 ID:4KnrU+VK
>>162
失礼いたしました。

別ページを見たらレコード削除するとか書いてたので^^;
ありがとうございました。

165 :NAME IS NULL:05/03/01 17:49:06 ID:???
ああ、あと入力側に256文字制限/プロンプト入力があるような話を
MLで見かけた気もする。出力側にも何らかの制限がある可能性も。

166 :NAME IS NULL:05/03/01 21:24:43 ID:???
>>163
mysql> select d from hoge limit 1;
-----------------------------------------------------+

mysql> select d from hoge limit 1 \G
*************************** 1. row ***************************
d: 憊

こんな感じです。パイプとかで流し込めないのでしょうか?
その前に外部バイナリの指定ってSQL文の中でできる?できない??

167 :150:05/03/01 23:48:23 ID:???
皆様、ありがとうございました。
まず、テンプレートの使い方から勉強させていただくことにしました。

168 :NAME IS NULL:05/03/02 11:51:54 ID:b2z/H3G1
どなたかご教授下さい。
フィールドの並び順を CREATE TABLE コマンドで定義した順番から変更する方法はありますか?
もう一度 CREATE TABLE をやり直すしかないのでしょうか?

169 :NAME IS NULL:05/03/02 12:30:16 ID:???
>>168
定義上のフィールドの並び順を気にする時点で、
データベースを理解してないと思われ。

ま、ALTERでもして鯉

170 :NAME IS NULL:05/03/02 12:39:41 ID:???
>>168
気になる気持ちは、わからんでもないけどさ。
一旦別の名前に変えて(HOGE→HOGE2)
create table HOGE select ...... from HOGE2
とでもしたら?


171 :NAME IS NULL:05/03/02 13:06:50 ID:???
PDFファイルをMySQLで管理したいのですが
もともとの個々のファイルのタイムスタンプとは別に(でもこのタイムスタンプも埋め込む)
テーブルに格納された日時のタイムスタンプをIDの代りにしたいのですが
どういうコマンドライン?

172 :NAME IS NULL:05/03/02 14:28:16 ID:???
>168>>170
ALTER TABLE tbl_name
ADD column_name INT UNSIGNED AFTER defined_column_nane

173 :NAME IS NULL:05/03/02 19:09:20 ID:???
>>171
mysql > format c:

174 :168:05/03/03 09:30:39 ID:YOiMc7ef
>>172
できました。ありがとうございます!!

175 :170:05/03/03 09:57:27 ID:???
>>174
いい加減な回答ですまんかった。
>>172
そんなことができるとは知らんかったよ

176 :NAME IS NULL:05/03/03 12:27:42 ID:???
>>173
ありがとうございました!

177 :NAME IS NULL:05/03/04 22:54:45 ID:???
>>169
並び順って、開発効率を上げる面では重要だと思うけど。
リリース後の追加っていうなら分かるが。


178 :NAME IS NULL:05/03/05 09:44:08 ID:???
>>177
開発環境によってはそんなものは簡単に隠蔽できちゃうでしょ。


179 :NAME IS NULL:05/03/05 12:55:10 ID:???
だからといって、隠蔽できる開発環境を選べというのは違う気がする。

数百レベルの項目数になると、一つ一つ指定する際のオーバーヘッドも大きくなる。
テーブル分割してjoinすると、パフォーマンスで影響が出る。

項目順を予め入れ替えておくだけで解決できるなら、それはそれでやっておくべきだと思うぞ。


180 :NAME IS NULL:05/03/05 14:30:12 ID:???
項目数が数百ってギャグ?

181 :NAME IS NULL:05/03/05 14:55:47 ID:???
カタログスペックに挑戦してるんじゃね?

182 :NAME IS NULL:05/03/05 20:39:05 ID:???
>>179
いや、隠蔽しても別に1つ1つ指定する必要はないけど?
SELECT * しても、カラム名でアクセスすればイイだけの話だし。




183 :NAME IS NULL:05/03/08 01:39:30 ID:???
RedHatのクラスタでmySQLの社内システムを組もうと思うのですが
実際に運用されているかた、気をつけることとかありますか?

184 :NAME IS NULL:05/03/08 03:05:49 ID:???
GPLとか

185 :NAME IS NULL:05/03/08 04:04:59 ID:???
>>183
HAクラスタだよね。なら特に気にすることはなかったと思う。


186 :NAME IS NULL:05/03/08 09:08:52 ID:???
社内なら GPL も関係ないしね

187 :NAME IS NULL:05/03/08 09:30:53 ID:???
>>186
日本語は正確に
×:社内なら GPLも関係ない
○:社内なら GPLでも関係ない(ことが多い)

188 :NAME IS NULL:05/03/08 11:36:18 ID:???
問題はGPLなコードを社外に持ち出すことをとめることが出来るのかどうか

189 :NAME IS NULL:05/03/08 12:12:06 ID:s4x3oOUv
>>188
ごめん、よく分かってないんで、教えて欲しいんだけど。
コードを持ち出すってどういうこと?

>>183のようなシステム作って、それを他に売ることをとめられるかってこと?
それ防ぐことは、別に難しいことじゃないと思う。
それとも、作ったシステムを、社外から使うのを防げるかってこと?
社外から使っても、別にいいんじゃないの?

190 :NAME IS NULL:05/03/08 22:04:44 ID:???
GPLだし、これ持ち出して自分で改良して売ってみようかな〜

191 :NAME IS NULL:05/03/08 23:22:38 ID:???
>>190
なるほど。そういうことですか。
内部の人がパクって売ってしまうことを防げないということですね。

192 :NAME IS NULL:05/03/08 23:55:39 ID:???
会社(法人格)がGPLでライセンスされてるからといって、
従業員にGPLで公開されてると見なせるのだろうか?
その前提なしに従業員がパクったら横領だよ。
勿論コード以外の資料を添付または流用したら確実に、
他にも会社の技術を勝手に転用されたと訴えられるだろう。

流用・転用は裁判の結果がでないと判断できないけど、
個人で裁判を受けて立つメリットデメリットを考えると
俺にはそこまで商才はないのでやらない。

193 :NAME IS NULL:05/03/09 00:20:20 ID:???
んじゃーやっぱり、>>188のようなことは、あり得ないよな。

194 :NAME IS NULL:05/03/09 00:40:17 ID:???
なんにせよグレーゾーン
おとなしく商用ライセンス買えと
7万くらいだっけ?

195 :NAME IS NULL:05/03/09 02:18:22 ID:???
>>194
>なんにせよグレーゾーンおとなしく商用ライセンス買えと
え?話がずれてきてない?

>>186 社内ならGPLでも関係ないこと多い
>>188 問題はGPLなコードを社外に持ち出すことを止められるか?
>>189-192 コードパクって売る輩がいるかも(ハイリスクだけど)

ってことだろ。社内でも(リスク度外視でコード盗むやつを止められないから)
グダグダ言ってないで商用ライセンス買えってことかい?

196 :192:05/03/09 03:21:07 ID:???
>>195
俺もちと話がずれてると思う。
別に会社でGPLのを使うのはグレーでもなんでもない。
(MySQL AB的には、恒久的に常用するならCML買えよが本音)

197 :NAME IS NULL:05/03/09 10:48:01 ID:???
社内で GPL なのは公開する必要なし
それを社外に持ち出して公開するのも GPL では問題なし
ただし、GPL 以外の問題があります

198 :NAME IS NULL:05/03/09 22:24:50 ID:1ImZYU2T
ここにmysqldumpで取ったバックアップファイルがあります。
これをリストアしようと
mysql -uuser -ppass db < dumpfile.dmp
したのですが、TEXTフィールドで改行が入った文字列が上手く入りません。

dumpfile.dmpを見ると「3月4日\r\n私から\r\n田中さんへ\r\n」のように改行はエスケープされています。
しかしこれをインポートしてみると「3月4日\r<改行>私から<改行>田中さんへ\r<改行>のように所々「\r」が
残ってしまいます。

MySQLのバージョンは4.0.20-logです。
よろしくお願いします。


199 :NAME IS NULL:05/03/10 11:18:33 ID:???
MySQL4.0.23を使用しています。
レプリケーションをしている2台のサーバがありまして
masterのバイナリログがmaster-bin.100まで進んでいて
slaveがrelayログにmaster-bin.100の分まで溜め込んでいます。
この時にmasterのバイナリログmaster-bin.099までは圧縮もしくは削除しても
slave側のレプリケーションは停止しないでしょうか。

200 :NAME IS NULL:05/03/10 15:01:11 ID:???
サーバとクライアントの通信を暗号化するにはどうすればいいのでしょうか?

201 :NAME IS NULL:05/03/10 15:34:15 ID:???
>>200
MySQLとSSLでググれ


202 :NAME IS NULL:05/03/11 03:12:51 ID:???
>>199

slaveはrelayログでレプリケーションするので、
relayログがあるならmaster側のバイナリログを削除しても大丈夫。
レプリケーションの仕組みはMYSQL全機能リファレンスに詳しく書いてある。


203 :NAME IS NULL:05/03/11 04:54:53 ID:???
>>199
「OSC2005/2005-03-26: 4B-2:MySQLのバックアップ・リカバリ」
http://www.ospn.jp/osc2005/modules/eguide/event.php?eid=11
これを聴きにいくのもよいかと。

多分バックアップ&リストアの絡みで
bin-logの話も聞けると思う。

204 :NAME IS NULL:05/03/11 13:47:22 ID:lHD/WJDj
mysq-4.0.20-3と
mysql-Max-4.0.20-3の違いを教えてください。

この二つの用途の違いが知りたいです

205 :NAME IS NULL:05/03/11 13:55:34 ID:???
maxの方はBDBが使える。以上。

206 :NAME IS NULL:05/03/11 14:59:03 ID:???
ふたりはプリキュア と ふたりはプリキュアマックスハートの違い

207 :NAME IS NULL:05/03/11 16:50:26 ID:???
ヲタにしかワカラン解説 w

208 :Super初心者:05/03/11 23:02:55 ID:YNcJrtR5
場違いな質問していいですか?

209 :NAME IS NULL:05/03/11 23:06:51 ID:???
>>208

ダメです。あきらめてください。


210 :Super初心者:05/03/11 23:11:48 ID:YNcJrtR5
やはり...。
データベースの件なら許してもらえますか?

211 :NAME IS NULL:05/03/11 23:21:41 ID:???
大変大変!ライセンスが糞なんだけどどうしたらいい?
PostgreSQLに逃げると幸せになれる?

212 :Super初心者:05/03/11 23:30:51 ID:YNcJrtR5
MySQLを使って、販売管理したいのですが可能ですか?
最終的には本支店間の物ですが?

213 :NAME IS NULL:05/03/11 23:32:39 ID:xptNNxFG
googleの検索みたいに、検索数と検索にかかった時間をphpで出したいんだけど、
そんなことできる?

1 row in set (0.26 sec)

この「1」と「0.26」の数値の変数ってphpから利用出来る?

214 :NAME IS NULL:05/03/11 23:42:02 ID:???
>>211
残念ながらなれる

3.xからずっと使ってきてそれなりに納得してきたのだが
4.1の糞さがなおらないままなのでPostgresに移行しちまった

215 :NAME IS NULL:05/03/12 00:06:28 ID:???
>>213
popenでmysql呼び出して標準入出力をやり取り


216 :213:05/03/12 00:13:22 ID:cnkhU+30
>>215
oh! サンクス!

217 :NAME IS NULL:05/03/12 03:33:43 ID:???
>>212
その「販売管理」の内容にもよる。

そもそもDBMSもいらず、Excelのファイルを
バッティングしなよいように共有する程度のことでも
良いのかもしれんしな。

218 :NAME IS NULL:05/03/12 03:55:50 ID:q3r/NSYl
mysqlとphpを使い出したのですが


mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("zip");

$result = mysql_query("SELECT * FROM zip_code where zip=\"$formdata\"");
$r = mysql_fetch_array($result);

というphpを書いたのですが、

-----------------------------------------
$resultにはどんな情報が書かれているのでしょうか?
---------------------------------------

printしても
$result=Resource id #3
とか出てきました。

$rには配列としてフィールド分、データが入っていました。


$result = mysql_query("SELECT * FROM zip_code where zip=\"$formdata\"");
$r = mysql_fetch_array($result);
この2行はワンセットで使うおまじないみたいなものと考えていいのでしょうか?

219 :NAME IS NULL:05/03/12 05:05:56 ID:???
そうだよ

220 :NAME IS NULL:05/03/12 05:09:25 ID:???
>>218
闇雲の手探りはやめて原点を見直すこと。
http://jp2.php.net/manual/ja/function.mysql-query.php

intと書いてあるけど、実際にはint/boolのmix。
もっと厳密に言うとリソース型/boolのmix。
http://jp2.php.net/manual/ja/resource.php

型の緩やかなPHPの場合、何でもかんでもmixになってしまうので、
余りその箇所の記述は鵜呑みにはしないこと。結構適当。

221 :218:05/03/12 06:13:52 ID:q3r/NSYl
>>219,220
ありがとうございます。ちょっとふっきれましたです。

222 :Super初心者:05/03/12 13:03:24 ID:PFGNYZwI
>>217
現在、死語かも知れませんが、
Lotusアプローチで管理していますが、
クライアントサーバ型で構築したいのです。
お金を掛けて市販ソフトを使用すれと良いのですが、
弱小企業の為、予算が出ません。
参考になる様な書籍など教えて頂けましたら幸いです。

223 :NAME IS NULL:05/03/12 16:02:47 ID:???
初心者といって免罪符とはならん
逆に初心者と書かれるとレスしたくないと言う人もいるから、そういう名前は付けてほしくない
現在の管理データからMySQLに移行するっていうのならそう難しくないんじゃないか?
ライセンスとかは私はわからんが

224 :NAME IS NULL:05/03/12 16:56:41 ID:???
メールから情報をMySQLに登録するのに何か良い方法はない
ですかね?参考になる書籍とか知っている方がいたら教えて
欲しいです。



225 :NAME IS NULL:05/03/12 18:58:58 ID:jyfgQc/6
マ板から来ました。最近、データベースの勉強をはじめMySqlを使っていたのですが
急にMysqlの起動が出来なくなりました
データベースlの設定に関してはあまりよくわからないです


具体的にはJSP・JavaからJDBC使ってMysqlに接続してたのですが
Mysqlのコネクタが生成できなくなるというエラーです
自分でいろいろ調べたのですがMysql側に問題がある事がわかりました
確かに
>mysql -u root -p
Enter password: root
でログインしようとしても
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
というエラーが出ます

再起動した後に急に使えなくなったのですが
思い当たる節としては直前に、my.iniファイルの

[mysqld]
default-character-set=sjis
[mysql]
default-character-set=sjis

を加えただけです
でも、これはただJSPの方で文字化け対策のために
やったので関係ないとは思っていますが・・・

どうかお力を貸してください。お願いします
mysql:4.1.9
tomcat:5.5.4
jdbcドライバ:mysql-connector-java-3.1.7-bin.jar
JDK:1.5.01

226 :NAME IS NULL:05/03/12 19:00:58 ID:???
mysqlが起動してなかったりして・・・

227 :NAME IS NULL:05/03/12 19:50:00 ID:???
>>226
え?今までは自動で起動してたんで問題なく使えてたんですけど
起動コマンド教えてくださいm(__)m

228 :NAME IS NULL:05/03/12 20:04:30 ID:???
とてつもなく頭の悪いのが紛れ込んできたな。

229 :225:05/03/12 21:33:10 ID:???
解決しました
>>228
ごめんなさいm(__)m

230 :NAME IS NULL:05/03/13 11:10:02 ID:???
4.1.10aと4.0.24キタ━(゚∀゚)━!!!

231 :NAME IS NULL:05/03/13 14:53:54 ID:DgyjN9xh
テーブル名に日本語使ったらヤバイ?


232 :NAME IS NULL:05/03/13 17:43:19 ID:???
あるフィールドを降順で並び変えて記録する句があれば教えてください。今は表示する時にGRANTで並び変えて表示しています。

233 :NAME IS NULL:05/03/13 19:55:25 ID:Vyou6TzA
内容が80桁の数字or80字の文字列のレコードが200万くらいあったら
そこから検索するのにどれくらいのスペックで何秒くらいかかるだろうか?
この内容のレコードでなくても数十万数百万のレコードについての例があったらスペックとレスポンスを教えて欲しい。

234 :NAME IS NULL:05/03/13 20:49:50 ID:qKRtUhv9
レンタルサーバー移転のためデータをエクスポートしようとしているのですが、

旧鯖
PHP/4.3.5
phpMyAdmin/2.5.6
MySQL/3.23.49

新鯖
PHP/4.3.10
phpMyAdmin/2.6.1-rc1
MySQL/3.23.49

旧鯖のデータがeuc-jpなのですが、新鯖ではsjisで取り込んでみたくて、

旧鯖phpMyAdminからそのままエクスポート

新鯖phpMyAdminでsjisエンコーディングにチェックを入れて取り込み。

その結果、特定の行(2つ)で1064エラーが出て上手く取り込めません。
1064エラーを調べてみたけれどよく分かりませんでした。

どうかエラーの意味を教えて下さい。

235 :NAME IS NULL:05/03/13 21:06:30 ID:???
>>231
ストレージタイプによっては、DB名またはDB名及びテーブル名
がそのままファイル名に連動することを理解して使うのなら別に構わんぞ。

>>232
意味ワカメ

236 :NAME IS NULL:05/03/13 22:17:07 ID:???
>>234
何百行もあるならともかく、2行だけなら手で直せばいいじゃん

まあそのエラー番号がphpMyAdmin固有なのかPHP固有なのかMySQL固有なのか
オレには分からんな。エスパーじゃないし。それにエラーメッセージとか
エラーの出た行のデータぐらい貼ってみそ。

237 :232:05/03/13 23:16:09 ID:???
すみません、誤字だらけでした
例えば、SELECT id FROM table で、上から順に10、31、5、12、44と表示された場合、
これを5、10、12、31、44となるように並べかえて「記録保存」したいのです。SELECT * FROM table GROUP BY id ではなく。
やはり、SELECTするたびにGROUP BYで並べ変えるしかないのでしょうか。

238 :NAME IS NULL:05/03/13 23:26:23 ID:???
>>237
order by

239 :NAME IS NULL:05/03/13 23:42:29 ID:???
>>237
>5、10、12、31、44となるように並べかえて「記録保存」
そんなことは出来ない。仮に5、10、12、31、44の順でINSERTを掛けたとして
ORDERを掛けずにSELECTしたら、その順序で取れたとしよう(まあ取れると思うが)。
しかし「いつも、その順序で取れるという保証」はどこにもない。

240 :237:05/03/14 00:26:06 ID:???
なるほど…ありがとうございました

241 :NAME IS NULL:05/03/14 00:30:53 ID:???
>>237
内部的な記録のされ方に何故こだわるのか?
ORDERをかけて正しく取り出せればいいと思うのだが。


242 :NAME IS NULL:05/03/14 01:15:41 ID:???
>>240
得心いかないかもしれないけど、一般的にRDBとはそういうものだから納得しる。

243 :237:05/03/14 14:43:48 ID:???
共有鯖を使っていて、出来るだけ負荷を減らしたかったのです。ただでさえ重い鯖なんで…
Excelのような感じだと思っていましたが、少し違うようですね

244 :NAME IS NULL:05/03/14 15:31:34 ID:???
>>243
負荷って「ORDER BY」を記述する手間のこと?
んなわけないな。

RDBの中の実装は詳しく知らないけど、
もしも、RDBで並び順を保持できたら、INSERTのときに、隙間に入れなければならないし、
UPDATEしただけでデータを移動しなけりゃならない。それこと無駄が多いだろ?
代わりに、そうやって順序をよく保持できるのが、インデックスであって
インデックスがはってあれば、ORDER BYしてもソートの負荷は少ないんでないの?


245 :NAME IS NULL:05/03/14 16:39:18 ID:???
>>237にSQLは合わないと思うな
なんか考え方的に

246 :NAME IS NULL:05/03/14 23:38:47 ID:???
テーブル作成時にchar(80)と指定したフィールドが
show tablesで確認するとvarcharになってしまうんですが仕様なんでしょうか?
バージョンは4.1です。

247 :NAME IS NULL:05/03/14 23:56:30 ID:???
>>246
仕様。「暗黙の型変換」で調べてミソ
(個人的にはちとキモチの悪い仕様)

248 :NAME IS NULL:05/03/15 00:04:11 ID:???
>>246
http://dev.mysql.com/doc/mysql/ja/silent-column-changes.html

249 :NAME IS NULL:05/03/15 18:24:07 ID:???
「UNION演算子でつながれたSELECT文は、
同じ列数を持ち、かつ同じ位置にある列のデータ型は同一でなければいけない。」と本に載ってたのですが、

table1 -> alpha char(1), num integer
rev_table1 -> alpha integer ,num char(1)
のように同じ位置にあるデータ型が異なる場合でも
UNIONで併合できてしまうのですが、
大丈夫なんでしょうか?

MySQL4.1.10nt


250 :NAME IS NULL:05/03/16 16:13:24 ID:g2s40+lA
妙な質問で申し訳ありませんが・・・

例えば

名前テーブル
+----+
|Name|
+----+
|清原|
|新庄|
|松井|
+----+
のようなテーブルから、どうにかして(select文で)

+--------+
|????  |
+--------+
|清原選手|
|新庄選手|
|松井選手|
+--------+
という結果を得ることはできるでしょうか?
(データの中身に別の文字列を連結して表示)
一時テーブルを作成しても良いです。
多分そんな事はできないんだと思うのですが、
もしやり方をご存知の方がいましたら教えて下さい。

251 :NAME IS NULL:05/03/16 16:18:27 ID:???
>>250
CONCATとか

Welcome to this crazy time 〜♪

252 :NAME IS NULL:05/03/16 16:23:19 ID:g2s40+lA
>>251
>CONCATとか
調べてみました。
文字列結合なんてできるんですね。
ありがとうございます!

253 :NAME IS NULL :05/03/19 17:58:09 ID:NyWmAKIj
質問です。4.0.22使用しています。

正規表現で文字列を取得できないのでしょうか。
()付きで正規表現関数にかけると、()の中身を取得できるような感じです。

どうぞご教授ください。

254 :NAME IS NULL:05/03/19 22:39:04 ID:???
ググってみたのかと子一時間

77 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)