元スレMySQL 総合 Part20
mysql覧 / PC版 /みんなの評価 :
51 = :
あ、PHPか
PDO使っとけ
52 = :
どこで聞けばいいのかわからなかったのでお願いします
複合一意キーや外部キーなどの制約名の命名規則みたいのありますか?
なんてつけたらいいのかわからなくていつもつけてません
ちなみにつけたらなんかおいしいことあるんでしょうか?
53 = :
55 = :
to reset your
password with the command SET PASSWORD = PASSWORD('your_existing_password')
56 = :
>>50
mysql ソース ダウンロード
あたりでググりなさい
57 = :
>>54
「他のサーバーから」ってどういう意味だい?
他のサーバーのPHPからってこと?
Macってクライアントマシンのこと?
PHPでエラーが出てるのに何でクライアントマシンが原因だと思うの?
58 = :
>>55
ありがとうございます!
さくらサーバー上で試しましたが、結果は変わらずです。
59 = :
>>57
ありがとうございます!
>>>54
>「他のサーバーから」ってどういう意味だい?
クライアントMac、さくらサーバー以外のサーバー上でMacと同一PHPファイルを走らせたということです。
>PHPでエラーが出てるのに何でクライアントマシンが原因だと思うの?
別サーバーでは問題なくPHPファイルが走り、さくらサーバーのMySQLに書き込めたので原因はクライアントにあると考えた次第です。
60 = :
>>59
別のサーバーからさくらのMysqlサーバーにアクセスできたってことね。
だったらさくらのウェブサーバーからMysqlにアクセスできないってだけだよね?
クライアント関係ないと思うけど。
つか、「サーバー」「クライアント」の意味を理解してるのかが疑問。
61 = :
すでに登録されてるデータベースから他の人が作ったテーブル構造を見たいのですが、
hogeというテーブルに対してどういう文を実行すればみれますか?
みたい内容は
id int(5) primary key auto_increment,
name varchar(30) collate utf8_unicode_ci not null
みたいなcreateやalterで変更した詳細な構造をみたいです
64 = :
phpで重複チェックするとき
対象となるフィールドでチェックする文字列をselect from~、whre "チェックする値"で検索をし、
変数$check =にその結果を入れて、変数$checkが存在したら重複という風にやってるのですが
これってやっぱり効率悪いでしょうか?
MySQLの事ですから重複チェックするには何かもっと良い方法があるような気がするのですが
65 = :
ちなみに重複チェックする時ってのは
データを挿入する時挿入する値が既に登録されてるかどうかチェックするって事です
66 = :
>>48
そんなの薦める奴初めて見た
67 = :
okashi.sqlというtableを作るファイルを作りました。
CREATE TABLE okashi ( NO smallint, NAME varchar(50) );
これをMYSQLで実行したいのですが、うまくいきません。
mysql>mysql onigiridb < c:\work\okashi.sql;
と入力しても
EROR:
Unknown command '\:'.
EROR:
Unknown command '\o:'.
となります。
どう解決したらいいでしょうか?
68 = :
show columns from TABLE
show index from TABLE
show create table TABLE
他あるかな
さくらだかのサーバーでファイアーウォールが拒絶してるとか
69 = :
>>66
普通はaddslashesを薦めるところ
71 = :
>>65
primary key かunique 指定しろ
72 = :
>>67
こうじゃなくて
mysql>mysql onigiridb < c:\work\okashi.sql;
こう
C:\> mysql onigiridb < c:\work\okashi.sql;
73 = :
>>64
対象カラムに一意キーをつけて、いきなりINSERTする、
エラーがでたらそのときに適切に対処、でもいいと思う
あと元のやり方だと、チェックしてからINSERTするまでの
わずかな間に他の人がINSERTするケースが想定されていない
74 = :
>>73
select の前でロックしておけばいいね
75 = :
SQL慣れしていないんですけど、
ストアドプロシージャ(データベースに対する一連の処理をまとめた手続き)って、
別にプログラム側で実装してもいいですよね?
76 = :
>>75
まぁそうだね。管理しやすさの問題。
プログラム側で一連の処理をクラス化・関数化して持っておくのと効果は同じ。
ただしストアドプロシージャの方が実行速度が速い可能性が高い。
77 = :
>>76
レスありがとうございます。
データベースは全くの初心者なんですが、
実務アプリケーションの設計からコーディングまで全部丸投げされて、
もう涙目状態なんですが、
プログラム側で全部処理してやろうぐらいの勢いで作っちゃおうと思います・・・
78 = :
>>72
ありがとうございます。ようやく一歩進めた感じですごくうれしいです。
79 = :
トランザクション処理は、1つのテーブルの更新のときは使わないで、
複数にまたがるテーブルの更新のときは使う。
といった感じでいいのでしょうか?
それとも1つのテーブルでもとりあえずやっておくべきでしょうか?
データベースエンジンは全部InnoDBでいいですよね?
80 = :
>>65
unique key (primaryでも可) と insert ... duplicate key updaye
81 = :
>>79
no
82 = :
トランザクションなんて使ったことないよ
使わなくても何でもできるよ
83 = :
,j;;;;;j,. ---一、 ` ―--‐、_ l;;;;;;
{;;;;;;ゝ T辷iフ i f'辷jァ !i;;;;; トランザクションなんて使えなくても
ヾ;;;ハ ノ .::!lリ;;r゙ ロックで代用できる
`Z;i 〈.,_..,. ノ;;;;;;;;>
,;ぇハ、 、_,.ー-、_',. ,f゙: Y;;f そんなふうに考えていた時期が
~''戈ヽ `二´ r'´:::. ` MySQLにもありました。
84 = :
マイイザムで十分だから。
85 = :
以前>>67で質問させていただいたものですが、>>72さんに教えて頂いたやり方に
修正したところ
mysql Ver 14.14 Distrib 5.5.13, for Win32 (x86)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Usage: mysql [OPTIONS] [database]
-?, --help Display this help and exit.
-I, --help Synonym for -?
・
・
・
・
max-join-size 1000000
secure-auth FALSE
show-warnings FALSE
plugin-dir (No default value)
default-auth (No default value)
と、エラーはでなくなりましたが、かなり長い文が表示され
外部ファイルでテーブルを作るsql文を実行しているのに
MYSQL> show tables;
と入力すると
Emty set
と表示され反映されていませんでした。
ウィンドウズのコマンドプロプントを管理者モードでやってみたりなどしましたが、変わりませんでした。
初歩的な質問で申し訳ありませんが解決方法はありませんでしょうか?
86 = :
>>85
usageが表示されてるよね。 mysql --help と入力したのと一緒。
>>72が書いたのそのままじゃなくて userも指定してみたら?あとケツの;は不要。
C:\> mysql -u (user) -p -D onigiridb < c:\work\okashi.sql
これでうまくいかないなら、mysql にログインしてから下記を試してみ
mysql> use onigiridb
mysql> source c:\work\okashi.sql
87 = :
>>86
ありがとうございます。
ユーザー指定して;を抜いたらできました。
mysql> use onigiridb
mysql> source c:\work\okashi.sql
こちらの方でもできました。感謝です。
88 = :
でもトランザクション以外にも外部キーとか使えないし
MyISAMで設計するとテーブル構造としてはあんま綺麗じゃない
90 = :
ショボグラマーだとどっち使ってもデッドロックは避けられない
91 = :
そうなんですか?
> MyISAMではデッドロックにもならないし(テーブル・ロック以外のロック方式がないからデッドロックはおきません)、
> ロック・タイムアウトもおきませんので、プログラム的な工夫は不要です。
> MySQLサーバ側でうまく調整してくれるようです。
> 一方、innoDBでもテーブル・ロックできてしまいますが、デッドロックの自動検出ができないようなので、
> my.cnf(Win版ではmy.ini)に「innodb_lock_wait_timeout」の設定をしておきましょう。
> つまり、innoDBではテーブル・ロックでデッドロックするとタイムアウトまで待ってからエラーが返りますので、
> MySQL利用者自身がエラーコードをチェックして対応することになります。
て書いてるところがあったのでMyISAMなら安心かな?と思ったのですが。
92 = :
それどこ情報よ
少なくともInnoDBについては間違ってる
93 = :
PCつけたまま寝てました。
http://tsuttayo.jpn.org/mysql/innodb/
ここです
といっても更新日が2005年だからだいぶ古いですね。
94 = :
>>93
寝るときにPCを付けたままかどうかなんて興味ないから
余計なことを書かなくてよろしい
95 = :
いや返事遅くなった言い訳をしたほうがいいかと
すみませんでした。
96 = :
そうですか。
97 = :
なんだよ、釣りサイトじゃねぇか。
98 = :
釣りサイトって何ですか。
99 = :
http://www.otomiya.com/
こういうとこだろ
100 = :
デッドロックが何なのかも知らないうちから心配してるだけに見えるな
みんなの評価 :
類似してるかもしれないスレッド
- MySQL 総合 Part22 (1001) - [94%] - 2012/7/10 16:45
- MySQL 総合 Part21 (1001) - [94%] - 2011/12/25 22:16
- MySQL 総合 Part25 (947) - [94%] - 2017/6/18 6:30
- MySQL 総合 Part24 (1010) - [94%] - 2015/2/14 4:46
- MySQL 総合 Part23 (992) - [94%] - 2013/8/11 17:00
- MySQL 総合 Part26 (860) - [94%] - 2023/2/2 9:30
- MySQL 総合 Part13 (996) - [89%] - 2008/6/10 21:02 ☆
- MySQL 総合 Part14 (1001) - [89%] - 2008/11/23 10:17 ☆
- MySQL 総合 Part15 (1001) - [89%] - 2009/4/20 12:15 ☆
- MySQL 総合 Part17 (1001) - [89%] - 2010/6/10 20:47 ○
- MySQL 総合 Part18 (986) - [89%] - 2011/1/17 15:46
- MySQL 総合 Part19 (982) - [89%] - 2011/6/9 2:33
- MySQL 総合 Part12 (1001) - [89%] - 2008/1/30 17:34 ○
- MySQL vs PostgreSQL Part2 (941) - [36%] - 2022/5/26 1:30 ○
トップメニューへ / →のくす牧場書庫について