タグ付けされた質問 「mysql」

MySQLは、構造化照会言語(SQL)を使用する無料のオープンソースのリレーショナルデータベース管理システム(RDBMS)です。SQL Server、SQLiteなど、他のDBにはこのタグを使用しないでください。これらはすべて、独自のSQL方言を使用してデータを管理する異なるDBです。

5
MySQLの命名規則はありますか?
ここに私がそれをする方法があります: テーブル名小文字であり、(別の単語に下線を使用し、そして特異あり、例えばfoo、foo_bar等 私は通常(常にではない)自動インクリメントPKを持っています。:私は、次の規則を使用tablename_id(例えばfoo_id、foo_bar_idなど)。 テーブルに外部キーである列が含まれている場合は、そのキーの列名を、そのテーブルのテーブルからコピーします。たとえば、テーブルfoo_barにFKがあるとしますfoo_id(foo_idPKはfoo)があるとします。 参照整合性を適用するためにFKを定義するとき、私は以下を使用しますtablename_fk_columnname(たとえば、追加の例3です)foo_bar_foo_id)。これはテーブル名/列名の組み合わせであるため、データベース内で一意であることが保証されています。 私はこのように列を並べ替えます:PK、FK、そして残りの列をアルファベット順に並べます これを行うより良い、より標準的な方法はありますか?

6
MySQL CONCATは、いずれかのフィールドにNULLが含まれているとNULLを返します
テーブル「デバイス」に次のデータがあります affiliate_name affiliate_location model ip os_type os_version cs1 inter Dell 10.125.103.25 Linux Fedora cs2 inter Dell 10.125.103.26 Linux Fedora cs3 inter Dell 10.125.103.27 NULL NULL cs4 inter Dell 10.125.103.28 NULL NULL クエリの下で実行しました SELECT CONCAT(`affiliate_name`,'-',`model`,'-',`ip`,'-',`os_type`,'-',`os_version`) AS device_name FROM devices 以下の結果を返します cs1-Dell-10.125.103.25-Linux-Fedora cs2-Dell-10.125.103.26-Linux-Fedora (NULL) (NULL) NULLを無視し、結果が次のようになるようにする方法 cs1-Dell-10.125.103.25-Linux-Fedora cs2-Dell-10.125.103.26-Linux-Fedora cs3-Dell-10.125.103.27- cs4-Dell-10.125.103.28-
162 mysql  sql  null  concat 





4
IDが一致しないSQL行を別のテーブルから削除する
mysqlテーブルの孤立したエントリを削除しようとしています。 次のような2つのテーブルがあります。 テーブルfiles: | id | .... ------------ | 1 | .... | 2 | .... | 7 | .... | 9 | .... テーブルblob: | fileid | .... ------------ | 1 | .... | 2 | .... | 3 | .... | 4 | .... | 4 | .... …
160 sql  mysql 

5
MySQLストアドプロシージャと関数のどちらを使用しますか?
MySQLのストアドプロシージャと関数を調べています。本当の違いは何ですか? それらは似ているように見えますが、関数にはさらに制限があります。 私は間違っている可能性がありますが、ストアドプロシージャですべてを実行でき、さらにストアドファンクションで実行できるようです。なぜ/いつプロシージャと関数を使用するのですか?

9
codeigniterアクティブレコードの挿入クエリの後に最後の挿入IDを取得する方法
フォームフィールドをMySQLテーブルに挿入するために使用する挿入クエリ(アクティブレコードスタイル)があります。クエリの戻り値として、挿入操作の最後に自動インクリメントされたIDを取得したいのですが、いくつか問題があります。 コントローラーの内部: function add_post(){ $post_data = array( 'id' => '', 'user_id' => '11330', 'content' => $this->input->post('poster_textarea'), 'date_time' => date("Y-m-d H:i:s"), 'status' => '1' ); return $this->blog_model->add_post($post_data); } そしてモデル内部: function add_post($post_data){ $this->db->trans_start(); $this->db->insert('posts',$post_data); $this->db->trans_complete(); return $this->db->insert_id(); } モデルのadd_postの戻りとして何も得られません
160 mysql  codeigniter 

5
MySQLでフィールドがnullの場合は0を返します
MySQLでは、「合計」フィールドがNULLの場合にゼロに設定する方法はありますか? これが私が持っているものです: SELECT uo.order_id, uo.order_total, uo.order_status, (SELECT SUM(uop.price * uop.qty) FROM uc_order_products uop WHERE uo.order_id = uop.order_id ) AS products_subtotal, (SELECT SUM(upr.amount) FROM uc_payment_receipts upr WHERE uo.order_id = upr.order_id ) AS payment_received, (SELECT SUM(uoli.amount) FROM uc_order_line_items uoli WHERE uo.order_id = uoli.order_id ) AS line_item_subtotal FROM uc_orders uo WHERE uo.order_status NOT …
160 sql  mysql 

7
演算 '='の照合(utf8_unicode_ci、IMPLICIT)と(utf8_general_ci、IMPLICIT)の不正な組み合わせ
MySqlのエラーメッセージ: Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '=' 私は他のいくつかの投稿を経験しましたが、この問題を解決することができませんでした。影響を受ける部分は次のようなものです。 CREATE TABLE users ( userID INT UNSIGNED NOT NULL AUTO_INCREMENT, firstName VARCHAR(24) NOT NULL, lastName VARCHAR(24) NOT NULL, username VARCHAR(24) NOT NULL, password VARCHAR(40) NOT NULL, PRIMARY KEY (userid) ) ENGINE = INNODB CHARACTER SET utf8 COLLATE utf8_unicode_ci; …

3
発生したばかりのMySQL警告を表示するにはどうすればよいですか?
行を生成する単純なMySQL CREATE TABLEステートメントを実行したところです 「クエリは正常、影響を受ける行は0、警告は1(0.07秒)。」 ただし、実際には警告が何であるかはわかりませんでした。発生したばかりの警告の内容をどのように確認できますか?MySQL 5.1を使用しています。私がオンラインで見つけた唯一のものは「警告を表示」でした。しかし、それだけが生み出した 「空のセット(0.00秒)。」
160 mysql 

9
MySQL Workbench:接続を維持する方法
エラーコード:2013。クエリ中にMySQLサーバーへの接続が失われました MySQL Workbenchを使用しています。また、私は挿入のバッチを実行しています。合計で約1000行です(例:INSERT INTO mytable SELECT * FROM mysource1; INSERT INTO mytable SELECT * FROM mysource2;...mysource3...mysource41000回掛ける)。各バッチはかなりの時間を要し、そのうちのいくつかは600秒以上かかります。 接続を停止したり、接続を失うことなく、夜間に作業を続けるために、ワークベンチをどのように構成できますか?

4
Laravel不明な列 'updated_at'
Laravelを使い始めたばかりで、次のエラーが表示されます。 不明な列 'updated_at'がGebruikersに挿入されています(naam、wachtwoord、updated_at、created_at) テーブルの移行時のタイムスタンプ列からのエラーであることはわかっていますが、updated_atフィールドを使用していません。Laravelチュートリアルを実行するときに使用していましたが、今は自分で作成(または作成しようとしている)しています。タイムスタンプを使用していないにもかかわらず、このエラーが発生します。使用されている場所が見つからないようです。これはコードです: コントローラ public function created() { if (!User::isValidRegister(Input::all())) { return Redirect::back()->withInput()->withErrors(User::$errors); } // Register the new user or whatever. $user = new User; $user->naam = Input::get('naam'); $user->wachtwoord = Hash::make(Input::get('password')); $user->save(); return Redirect::to('/users'); } ルート Route::get('created', 'UserController@created'); 型番 public static $rules_register = [ 'naam' => 'unique:gebruikers,naam' ]; public …


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.