のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,735人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    元スレMySQL 総合 Part20

    mysql覧 / PC版 /
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

    101 = :

    プロレスの技か何かですか?

    102 = :

    プリンセススピニングトゥホールド

    104 = :

    問題ない

    105 = :

    別に間違ってはいない。

    ただ、そのDBを複数アプリから触るシステムだったりする場合、
    DBでデフォ値設定できるならしておいた方が、
    今後のシステム保守でのバグ発生率がちょびっと下がるというのはあるかもね。

    106 = :

    どんなバグが発生するの?
    そのバグはdefault値があると本当に発生しないバグなの?

    107 = :

    バグというか、他のプログラムが別の値をデフォルト値として入れようとしていたらどうする?
    プログラム毎にデフォルト値が違うのってややこしくならないか?

    108 = :

    システム新規作成時:
     全アプリで、デフォルト値設定が同じになっているか。
    システム保守において:
     業務的にデフォルト値が変わった時、全アプリ漏れなく設定値修正

    こういうのを、手間ゼロで間違い無く出来るんだったらいいけど、そうはいかない。
    だからDBという一箇所だけで定められるんだったら、その方が望ましいんよ。

    110 = :

    ご返信ありがとうございます。
    複数アプリから使われるということはありえないDBですので、アプリ側でデフォルト値を設定しても問題無いのですね。
    というか、複数アプリからDBが使われるというケース自体全く想定していなかったので勉強になりました。

    111 = :

    DBを複数のプログラムが使うって当たり前の事じゃないのか?
    「複数アプリから使われるということはありえない」という方が珍しいとさえ思うけど

    112 = :

    たぶんプログラマとしてのレベルが違いすぎるんだと思いまする。
    自分が作ろうとしてるのはSNSとかの単純なWEBサイトです。
    WEBアプリという言い方が悪かったかもしれません。

    113 = :

    プログラムの塊として捉えてるからおかしい
    画面単位で考えな
    SNSっていったって登録、更新、削除といろいろあるでしょ
    ようするに複数画面から使われてる

    114 = :

    複数画面が使われても統一したDBクラスでアクセスするなら
    そのクラスでデフォルト値を設定すれば済むこと。

    個人的にはDBのデフォルト値はあんま意味無いと思うけどな。
    デフォルト値等の設定・管理をDB側、プログラム側で分かれるのは不便だし、
    結局プログラムからDBの値を読み出すときにDBのデフォルト値の設定を信用せず
    値のチェックや正規化を行うようにするからな。

    115 = :

    SNSは単純じゃないですw

    116 = :

    トランザクション処理を教えてください

    テーブルAとBをロック
    テーブルAの更新部分を取得
    テーブルAを更新
    lastInsertIdを調べる
    問題なし
    テーブルBの更新部分を取得
    lastInsertIdを調べる
    *問題なし
    テーブルAとBをアンロック

    もし*のところで問題があったら
    Aを更新前に戻して終了といった感じでいいでしょうか?
    更新前に戻す処理に問題が発生した場合はどうするんだって感じですが
    ロールバック失敗みたいなことはおこるのでしょうか?

    ちなみにエンジンはMyISAMです

    117 = :

    すみません抜けてました

    >テーブルBの更新部分を取得
    この後にテーブルBの更新です

    118 = :

    そもそも MyIsamはトランザクション使えないけど。
    トランザクション使いたいんならInnoDBですよ?

    119 = :

    >>118
    トランザクションがエミュレートできると書いてたので
    やりようによってはできるのかなぁと

    120 = :

    MyISAMにロールバック機能はないから
    Aを更新前に戻すにはプログラム側で更新前の値を覚えておいて
    その値にするようなUPDATE文を実行するわけだけど。
    かえってめんどくさくね

    121 = :

    1桁の0-9を入れる型として正しいのはなんでしょうか?

    122 = :

    PRIMARYでもFOREIGNでもUNIQUEでもない
    ただのKEYという制約がついてるんですが
    これはどういうものなんでしょう?
    SHOW CREATE TABLEをしたら出てきたのですが
    なんでこんなのがついてるのかは自分でも分かりません
    KEYだけだと検索ワードが多すぎて調べるのがきついです

    123 = :

    >>122
    制約じゃなくて単なるインデックス、それは。

    125 = :

    >>122だけだと情報がたりなさそうなので中身はこんな感じです

    CREATE TABLE `item` (
    `item_id` int(11) NOT NULL AUTO_INCREMENT,
    `item_name` varchar(100) NOT NULL,
    PRIMARY KEY (`item_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8

    CREATE TABLE `item_image` (
    `image_id` int(11) NOT NULL AUTO_INCREMENT,
    `item_id` int(11) NOT NULL,
    `image_path` varchar(255) NOT NULL,
    PRIMARY KEY (`image_id`);
    UNIQUE KEY `image_path` (`image_path`),
    KEY `item_id` (`item_id`),
    CONSTRAINT `item_image_ibfk_1` FOREIGN KEY (`item_id`) REFERENCES `item` (`item_id`) ON DELETE CASCADE ON UPDATE CASCADE
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8

    126 = :

    すみませんリロードしてませんでした
    インデックスだったんですね
    どうもありがとうございます
    DDLは何のことか分からないので調べてきます

    127 = :

    >>121
    正解などない。好きにしろ。

    128 = :

    テーブルに指定する
    DEFAULT CHARACTER SET utf8

    DEFAULT CHARSET=utf8
    って何が違うんですか?

    129 = :

    質問です。

    create table tblA(
    clm1,
    clm2,
    clm3
    )
    create view vB AS
    SELECT
    clmElse AS clm3,
    clmElse AS clm2,
    clmElse AS clm1
    FROM tblElse

    この定義の時、カラム名を指定しなくて済むお手軽SQL文であるところの INSERT INTO tblA SELECT * FROM tblB を、
    登録されるレコードの登録元と登録先のカラム名が一致するようにしたい。
    tblAはしょっちゅう定義が変更されるので、カラム名を指定するINSERTを書くのは避けたい。
    tblAに変更がある毎にビューを再定義するのは、保守担当者が再定義することを忘れるリスクが高いので最後の手段にしたい。

    何かいい方法はありますか?

    131 = :

    tblAのメンテ担当者とvBの担当者とアプリの担当者はそんなに仲が悪いのか?
    飲み会企画するとか、あるいはまず休憩所で声をかけてみてどんなことに興味が
    あるか聞き出してみるとか?

    133 = :

    だん だん Lサイズ

    136 = :

    ↑この流れ

    2chあるある

    137 = :

    ↑この流れ

    2chなしなし

    139 = :

    ↑この流れ

    2chもみもみ

    141 = :

    >操作しない限り

    どういうこと?

    142 = :

    すみません、phpmyadmin使ってます
    主キーにauto_incrementを使ってるのですが
    それを1~ではなく0~にしたいと思ってまして

    143 = :

    >>128

    MySQL :: MySQL 5.5 Reference Manual :: 9.1.3 Specifying Character Sets and Collations
    http://dev.mysql.com/doc/refman/5.5/en/charset-syntax.html

    CHARSET can be used as a synonym for CHARACTER SET.

    144 = :

    >>142
    無理
    indexってそのまんまindexだからindex以下にはできない

    145 = :

    >>142
    auto_increment_offset などを見てると 0 は設定できない気がする...

    0 からスタートさせるのではないのだが、
    set sql_mode="NO_AUTO_VALUE_ON_ZERO" してから
    insert すれば 0 を入れることも可能。
    # トラブルの原因になりそうだから嫌だけど
    http://dev.mysql.com/doc/refman/5.1/ja/server-sql-mode.html#id378544

    146 = :

    >>144>>145
    なるほどー、やっぱり無理はしないほうがいいみたいですね
    親切にどうもありがとうございます

    147 = :

    文字化けとかじゃなくて保存した全角文字を表示すると
    どーしても全角の部分が???になっちゃうんですが
    考えられる原因とかあるでしょうか?
    自分で思い当たるのは大体やったんですが・・・。

    148 = :

    表示ってのは
    MySQLコンソールとphpで表示する場合です
    phpmyadminで見るとちゃんと全角で「日本人」となるのですが
    他だと???に
    ちなみにレコードの挿入はphpmyadminで行いました

    150 = :

    >自分で思い当たるのは大体やったんですが

    何やったのかくらい書けよクズが


    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / mysql一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について