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

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

9
失敗したRails移行のロールバック
失敗したレールの移行をどのようにロールバックしますか?rake db:rollback失敗した移行は元に戻されると思いますが、いいえ、前の移行(失敗した移行から1を引いたもの)をロールバックします。そしてrake db:migrate:down VERSION=myfailedmigration、どちらも機能しません。私はこれに数回遭遇しました、そしてそれは非常にイライラします。問題を再現するために私が行った簡単なテストは次のとおりです。 class SimpleTest < ActiveRecord::Migration def self.up add_column :assets, :test, :integer # the following syntax error will cause the migration to fail add_column :asset, :test2, :integer end def self.down remove_column :assets, :test remove_column :assets, :test2 end end 結果: == SimpleTest:移行============================================= ======== --add_column(:assets、:test、:integer) -> 0.0932s --add_column(:asset、:error) レーキが中止されました! エラーが発生し、それ以降の移行はすべてキャンセルされました。 …

9
MySQLのスケーリングソリューション(レプリケーション、クラスタリング)
私が働いているスタートアップでは、データベースのスケーリングソリューションを検討しています。(少なくとも私にとっては)MySQLクラスター、レプリケーション、およびMySQLクラスターの非同期バージョンであるMySQLクラスターレプリケーション(バージョン5.1.6から)を備えたMySQLとは多少混乱します。MySQLのマニュアルでは、クラスターに関するFAQのいくつかの違いについて説明していますが、どちらをいつ使用するかを確認するのは困難です。 これらのソリューションの違いと長所と短所をよく知っている人からのアドバイスをいただければ幸いです。それぞれをいつ使用することをお勧めしますか。

14
自動インクリメントIDを既存のテーブルに追加しますか?
'fname'、 'lname'、 'email'、 'password'、および 'ip'を含む既存のテーブルがあります。しかし、今は自動インクリメント列が必要です。しかし、私が入ると: ALTER TABLE users ADD id int NOT NULL AUTO_INCREMENT 私は次のようになります: #1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key 何かアドバイス?:)

11
データベース内のすべてのテーブルを1つの照合に変換するにはどうすればよいですか?
エラーが発生します: 操作 '=' "の照合(utf8_general_ci、IMPLICIT)と(utf8_unicode_ci、IMPLICIT)の不正な組み合わせ 両方のテーブルを手動でに変更しようとしましたutf8_general_ci,IMPLICITが、それでもエラーが発生します。 すべてのテーブルをに変換して実行する方法はありutf8_general_ci,IMPLICITますか?
82 mysql  sql 

3
チャットメッセージをデータベースに保存する最良の方法は?[閉まっている]
クローズ。この質問はもっと焦点を合わせる必要があります。現在、回答を受け付けていません。 この質問を改善したいですか?質問を更新して、この投稿を編集するだけで1つの問題に焦点を当てるようにします。 4年前に閉鎖されました。 この質問を改善する チャットアプリを作成していますが、チャットの会話でこれまでに送信されたすべてのメッセージの完全な履歴が必要です。現時点では、「messages」というテーブルに各メッセージを1行として保存しています。'Hi'のような小さなメッセージでも独自のデータベースレコードがあるため、このテーブルが大きくなる可能性があることを認識しています。 誰かがよりスケーラブルなmysqlソリューションを推奨できますか?個々のメッセージが検索可能、編集可能、または削除可能である必要はありません。会話全体を1つの巨大なフィールドに保存できますか? あなたのアイデアを聞いてみたいです!

3
MySQLでインデックスの名前を変更するにはどうすればよいですか
インデックスの名前を変更したいのですが。表の変更に関するドキュメントを見てきましたが、単にインデックスの名前を変更するための構文を理解できません。MySQL GUIを介して実行すると、インデックスが削除され、新しいインデックスが作成されます。これは機能しますが、インデックスの名前を変更するためだけにインデックス全体を再構築することは避けたいと思います。 [追加情報] 表の変更のドキュメントには、 テーブルメタデータのみを変更し、テーブルデータは変更しない変更は、テーブルの.frmファイルを変更し、テーブルの内容に触れないことですぐに行うことができます。次の変更は、この方法で行うことができる高速な変更です。 * Renaming a column or index. ただし、(テストデータベース上の).frmファイルを編集してサーバーを再起動し、インデックスの名前を変更しようとすると、列を一覧表示しようとしたとき、および実行しようとしたときに、UIに「列をフェッチできませんでした」と表示されるようになりました。クエリを実行すると、「不明なテーブルエンジン ''」というエラーが返されます。.frmファイルには多くのバイナリコンテンツが含まれています。バイナリ情報を編集するための優れたツールはありますか?
82 sql  mysql  indexing 

10
ヒストグラムプロットのデータを取得する
MySQLでビンサイズを指定する方法はありますか?現在、次のSQLクエリを試しています。 select total, count(total) from faults GROUP BY total; 生成されているデータは十分ですが、行が多すぎます。必要なのは、データを事前定義されたビンにグループ化する方法です。スクリプト言語からこれを行うことはできますが、SQLで直接行う方法はありますか? 例: +-------+--------------+ | total | count(total) | +-------+--------------+ | 30 | 1 | | 31 | 2 | | 33 | 1 | | 34 | 3 | | 35 | 2 | | 36 | 6 | | 37 …

14
mysql.sockが見つかりません
mysqlを再インストールする必要がありましたが、起動に問題があります。ソケット(mysql.sock)が見つかりません。問題は、どちらもできないことです。MacOSX 10.4ターミナルで、「:locate mysql.sock」と入力すると、に戻り/private/tmp/mysql.sockます。ソケットファイルがその場所に存在することは理にかなっていますが、実際には存在しません。 ソケットファイルを見つけるにはどうすればよいですか? Locateが誤った場所を返している場合は、何らかのメモリとおそらくインデックスが必要です。そのインデックスを更新するにはどうすればよいですか?

1
MySQL:NULLを0に型キャストする
次の表(たとえば、いくつかの内部結合ステートメントの結果)を想定します。 id | column_1 | column_2 ------------------------ 1 | 1 | 2 | 2 | 2 3 | | 3 たとえば、次のステートメントから取得できます。 select a.id, t1.column_1, t2.column_2 from a left join t1 on a.id = t1.id left join t2 on a.id = t2.id ここで、t1.column_1とt2.column_2を次のように合計したい場合 select a.id, t1.column_1, t2.column_2, (t1.column_1 + t2.column_2) as …
82 sql  mysql  casting 

8
MySQLで日付範囲の重複を確認する
このテーブルは、セッション(イベント)を格納するために使用されます。 CREATE TABLE session ( id int(11) NOT NULL AUTO_INCREMENT , start_date date , end_date date ); INSERT INTO session (start_date, end_date) VALUES ("2010-01-01", "2010-01-10") , ("2010-01-20", "2010-01-30") , ("2010-02-01", "2010-02-15") ; 範囲間で競合が発生することは望ましくありません。 我々はから新しいセッションを挿入する必要があるとしましょう2010-01-05に2010-01-25。 競合するセッションについて知りたいのですが。 これが私の質問です: SELECT * FROM session WHERE "2010-01-05" BETWEEN start_date AND end_date OR "2010-01-25" BETWEEN start_date …

14
MySQLダンプでこれらのコメントを取り除くにはどうすればよいですか?
データベースのダンプのみの単純な構造を作成しようとしています。を使用mysqldumpすると、次のような結果が得られます。 /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; DROP TABLE IF EXISTS `foo`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; 何をしようとしても、それらのコメントを取り除くことができないようです。 私は現在使用しています: mysqldump -p -d --add-drop-table --skip-tz-utc --skip-set-charset -h 127.0.0.1 -u foo …



1
MySQLは行を動的な列数にピボットします
3つの異なるMySQLテーブルがあるとしましょう。 表products: id | name 1 Product A 2 Product B 表partners: id | name 1 Partner A 2 Partner B 表sales: partners_id | products_id 1 2 2 5 1 5 1 3 1 4 1 5 2 2 2 4 2 3 1 1 行にパートナー、列に製品を含むテーブルを取得したいと思います。これまでのところ、次のような出力を取得できました。 name | name | …
81 mysql  sql  pivot 

4
2つのデータベース間のMysqlデータベースの同期
MySqlバックエンドを使用して、さまざまなショップでJava PoS(Point of Sale)アプリケーションを実行しています。ショップのデータベースをホストサーバーのデータベースと同期させたい。 ショップで変更が発生した場合は、ホストサーバーで更新する必要があります。どうすればこれを達成できますか?
81 mysql  database 

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