MySQL
- MySQLの連番扱い
アクセス2000では、オートカウントという型が存在するので、 特に意識しなくてもレコードを作成するとカウントされますが MySQLやPostgreSQLでは連番というフィールドを設けた場合、 どのように連番をつけているのでしょうか? 例えば、連番のフィールド名をserialという名前にした場合、 連番のフィールドに値をセットする前に、select max(serial)+1 from table_sample; のように連番の値を求めるのでしょうか?
- テーブル破損チェックについて
perl(UNIX環境)において、mysqlの「myisamchk」コマンドでテーブル破損チェックを行おうとしています。 perlスクリプトにおいて @result = qx{/usr/local/mysql/bin/myisamchk テーブル名} と記述して、@resultに戻りメッセージを受けようとしていますが、@resultに戻り値がどうしても入りません。 (スカラー変数にしてもとれませんでした) 大変困っていますので、よろしくお願い致します。
- MySQLで最小値
次の様な連番が入ったseqというフィールドがあります。 => select seq from hoge order by seq desc; seq ----- 427 426 425 424 423 422 421 420 419 418 (10 rows) これにlimit 5とすると次の様にな結果になります。 => select seq from hoge order by seq desc limit 5; seq ----- 427 426 425 424 423 (5 rows) このlimit 5で表示された結果の最小値(423)を取得したいのですが 上手くいきません。(わかりません) min(seq)を試してみたのですが418が返ってきてしまいます。 => select min(seq) from hoge order by seq desc limit 5; min ----- 418 (1 rows) limitで表示された結果の最小値(423)を とる事はできるのでしょうか? どうぞ宜しくお願いいたします。
- rootのパスワード
コマンドラインでrootのパスワードを設定をするのに >mysql -u root と入力するのですが ERROR 2003:Can't connect to MySQL server on 'localhost'(10061) というのが表示されて設定ができません。 どなたかお知恵をお貸しください。 どうぞよろしくお願いいたします。
- ベストアンサー
- MySQL
- noname#11156
- 回答数3
- PostgreSQLとMySQL
Accessで簡単なデータベース(顧客管理等)を作れる程度です。 Webでのデータベースを作成したいとおもい調べたところフリーでメジャーなのが上二つかなぁというところまできました。 SQLに関してはうっすら分かるのですが、PHPと組み合わせて簡単なデータベースを作る場合、これから学び始めるのはどちらがいいでしょうか。(分かりやすさ、メジャー度等) オススメの入門書等ありましたら教えていただけるとうれしいです。 他にもコレを知っとけ、とかありましたらご教授ください。
- MySQLへの特殊文字の挿入について
こんばんは。今MySQLへのデータの挿入時に特殊文字を挿入することが出来ないエラーに悩まされています。初心者で大変申し訳ございませんが、色々と調べてみたのですがどうしても解決できなかった為、質問させて頂きました。お手数をおかけしますがご教授いただければ幸いです。 問題というのは、MySQLへのデータの挿入時の文字列に特殊文字が含まれていた場合、この場合文字列中に「?」が含まれていた場合にこの文字列をinsertすると「?」が「1」に変換されてしまうのです。環境としてはPHPのPEARからの利用で、文字列はDBクラスのquoteメソッドでエスケープしてから挿入しております。文字列の文字コードはEUC-JPです。バックアップ用ファイル(CSV形式のテキストファイル)には正しく記録されておりますのでMySQLの仕様に関しての問題ではないかとは考えておりますが、どうしても解決できず困っております。お手数をおかけしますがよろしくお願いいたします。
- なければInsert、あればUpdate …ってできますか?
MySQL 3.23.49-nt を使用中です。 とあるテーブルを、3つのサーバで使用中で、このテーブルを一つのサーバで更新して、他のサーバへ レコードをコピーしたいのですが、「他のサーバ」に既に同じキーの レコードが存在する可能性があります。 こちらで更新したいサーバ(A)のテーブルの内容をこんな感じだとします。 キー番号 | SEQ | 項目A | 項目B ---------+-----+-------+------ 1001 | 1 | 11-AA | 11-BB 1001 | 2 | 12-AA | 12-BB 1002 | 1 | 21-AA | 21-BB 1002 | 2 | 22-AA | そして、コピー先のサーバ(B)のテーブルの内容をこんな感じだとします。 キー番号 | SEQ | 項目A | 項目B ---------+-----+-------+------ 1001 | 1 | 11-BA | 11-XX 1002 | 1 | 21-BA | 21-YY 1002 | 2 | | 22-YY 「キー番号」「SEQ」「項目A」だけを、サーバAと同一にしたいと考えています。 キー番号とSEQが同一のレコードが存在する場合、サーバBの「項目B」は変えたく ありません。 すなわち、サーバ(B)が キー番号 | SEQ | 項目A | 項目B ---------+-----+-------+------ 1001 | 1 | 11-AA | 11-XX ---- 項目Aを更新 1001 | 2 | 12-AA | ---- レコードをINSERT 1002 | 1 | 21-AA | 21-YY ---- 項目Aを更新 1002 | 2 | 22-AA | 22-YY ---- 項目Aを更新 のようになって欲しいのです。 そこで、 「キー番号="1001"、SEQ = "1" のレコードがあれば、そのレコードの項目Aに'11-AA'をセットしてUPDATE。 レコードがなければ、キー番号="1001"、SEQ = "1"、項目A='11-AA'のレコードをINSERT。」 というようなMySQLの命令文(?)を書けないかなぁ?と、一生懸命参考書をひっくり返してもがいています。 できるようなできないような... 無理でしょうか?
- MYSQLでPCにあるデータベースのリストを得るには?
こんにちわ, 現在MYSQLの学習をしています。 タイトルにあるようにMYSQLでPCにあるデータベースのリストを得るにはどうすればいいのでしょうか。 PostgreSQLでいう $ psql -l のコマンドの事です。 よろしくおねがいします。
- フィールドの型について
あるフィールドで中に入れる値が7桁の数字 で、それぞれの桁が0か1のみ、という場合、 このフィールドの型は何が一番最適でしょう か? 例) 0000000 1000000 0101010 1111111 このような感じです。 ・桁が増えたり減ったりましません。 ・各桁の数字が0と1以外になることは ありません。 よろしくお願いします!
- ファイルから直接SQLを実行するコマンドを教えてください。
SQL文を書いて保存してある C:\SQL\abc.sql というファイルがあるとします。 これを直接実行したいんですが、どういうコマンドを打てば良いのかわかりません。 誰かわかる方は教えてください。よろしくお願いします。
- ベストアンサー
- MySQL
- kamkamkam3
- 回答数2
- Win98とMySQLについて
初めてmySQLを使ってDBの構築をしています。皆様のお力をお借りしたく思います。 Win98SEのパソコンでACCESS2000とMySQLを使ってデータベースを作成していますが、mySQLODBC3.51を使ってリンクテーブルを作成したところ、全く開きません。 何かの設定がおかしいのでしょうか。
- MySQLをPHPで使おうとして
FedoraCore(192.168.0.101)に /var/www/html/index.php: <?php $link=mysql_connect("localhost","root","12") or die("Could not connect"); print"Connected successfully"; mysql_close($link); ?> を入れて他のPC(192.168.0.100)からこれを呼びましたが Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) in /var/www/html/index.php on line 2 Could not connect となり接続できません /var/lib/mysql/はありmysql.sockがありません どうしたらいいのでしょうか?
- mySQLの文字コード
mySQLで、 --with--charset=ujis や、 --default-character-set=ujis など、 文字コードを指定するものがありますが、 これらは実際どのような事なのでしょうか? dumpファイルからmySQLにデータを流し込むとき、 上記の場合だとdumpファイルの文字コードはEUCに しないといけないのでしょうか? 仮に上記の場合でdumpファイルをSHIFT_JISで流し込んだとき、 そのデータをブラウザで表示する場合の 文字コードもSHIFT_JISにすれば 文字化けせずに表示したのですが。 mySQLのデフォルト文字コード(?)とinsertするデータの 文字コードは一致させなければいけないのでしょうか? よろしくお願いします。
- MySQLをはじめて実行してみると
[root@localhost root]# /usr/bin/mysql ERROR 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) [root@localhost root]# となりました 何が悪いのでしょうか?
- MySQL起動方法について
MySQLが起動できないのですが、何が原因か判らず 対処できずにいます。 下記URLを参考に、MySQL3.23.58をインストールし、 winmysqladmin.exeをダブルクリックして 起動しようとしたのですが、パスワードを 設定する為の画面が出てきませんでした。 http://wiz.syscon.co.jp/winmysql.html 右下に信号機のような絵が現れ、赤色になっています。 現在どういう状況なのか、ご指摘頂けないでしょうか。 OSはWindows2000です。 どうぞ宜しくお願いします。
- 複雑なSQLですが、教えてください。
Windows 2000 MySQL でデータベースプログラムを作成しています。 次のようなテーブルから求めたいSQL結果が下のようになっていますが、 なかなか難しいですが、一発のSQLで出来るようにしたいです。 どなたかSQL達人さん教えてください。 テーブル名:ITEMのレコード ----------------------------- iCode iPrice iWeight ----------------------------- 1 50 5 2 60 6 3 70 7 4 50 7 4 80 8 5 90 9 6 100 10 7 100 10 7 110 11 ... 求めたいSQL結果 ----------------------------------------------- iCode iPrice 1 2 3 4 5 6 7 ----------------------------------------------- 50 5 7 60 6 70 7 80 8 90 9 100 10 10 110 11 ---------------------------------------------