問題タブ [mysql-error-1050]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - MySQL "CREATE TABLE IF NOT EXISTS" -> エラー 1050
次のコマンドを使用します。
これを MySQL Query Browser で 2 回実行すると、次のようになります。
テーブル 't1' は既に存在します エラー 1050
テーブル「IF NOT EXISTS」を作成してもエラーは発生しないと思っていました。何か不足していますか、それともバグですか? バージョン5.1を実行しています。ありがとう。
mysql - .sql ファイルは MySQL と SQL で異なりますか?
.sql ファイルがあり、それを MySQL データベースにロードしたいと考えています。どのデータベース (MySQL または MS-SQL) から作成されたのかわかりません。
今、そのファイルを MySQL データベースにインポートしようとしています。そのファイルのインポートおよび実行中にエラーが表示されます。
Q1. それで、私の質問は、MySQL と MS-SQL から生成された .sql ファイルが異なるかどうかです。
注: ファイルのインポートに SQLYog ソフトウェア (MySQL のグラフィカル インターフェイス) を使用しています。
エラーは次のとおりです。
クエリ: CREATE TABLE
ads
(id
bigint(20) NOT NULL auto_increment,city_id
int(11) NOT NULL,type
text collate utf8_bin NOT NULL,town
text collate utf8_bin NOT NULL,address
text collate utf8_bin NOT NULL,price
text collate utf8_bin NOT NULL,info
text collate utf8_bin NOT NULL,link
text collate utf8_bin NOT NULL,hasImage
int(11) NOT NULL,language
varchar(2) collate utf8_bin NOT NULL,time_added
varchar(255) collate utf8_bin NOT NULL, PRIMARY KEY (id
) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1
エラーが発生した場所:2009-09-08 17:41:01 行番号:35 エラー コード: 1050 - テーブル 'ads' は既に存在します
クエリ: CREATE TABLE
ads
(id
bigint(20) NOT NULL auto_increment,city_id
int(11) NOT NULL,type
text collate utf8_bin NOT NULL,town
text collate utf8_bin NOT NULL,address
text collate utf8_bin NOT NULL,price
text collate utf8_bin NOT NULL,info
text collate utf8_bin NOT NULL,link
text collate utf8_bin NOT NULL,hasImage
int(11) NOT NULL,language
varchar(2) collate utf8_bin NOT NULL,time_added
varchar(255) collate utf8_bin NOT NULL, PRIMARY KEY (id
) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1
エラーが発生した場所:2009-09-08 17:41:21 行番号:35 エラー コード: 1050 - テーブル 'ads' は既に存在します
クエリ: CREATE TABLE
ads
(id
bigint(20) NOT NULL auto_increment,city_id
int(11) NOT NULL,type
text collate utf8_bin NOT NULL,town
text collate utf8_bin NOT NULL,address
text collate utf8_bin NOT NULL,price
text collate utf8_bin NOT NULL,info
text collate utf8_bin NOT NULL,link
text collate utf8_bin NOT NULL,hasImage
int(11) NOT NULL,language
varchar(2) collate utf8_bin NOT NULL,time_added
varchar(255) collate utf8_bin NOT NULL, PRIMARY KEY (id
) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1
エラーが発生した場所:2009-09-08 17:41:35 行番号:35 エラー コード: 1050 - テーブル 'ads' は既に存在します
クエリ: CREATE TABLE
ads
(id
bigint(20) NOT NULL auto_increment,city_id
int(11) NOT NULL,type
text collate utf8_bin NOT NULL,town
text collate utf8_bin NOT NULL,address
text collate utf8_bin NOT NULL,price
text collate utf8_bin NOT NULL,info
text collate utf8_bin NOT NULL,link
text collate utf8_bin NOT NULL,hasImage
int(11) NOT NULL,language
varchar(2) collate utf8_bin NOT NULL,time_added
varchar(255) collate utf8_bin NOT NULL, PRIMARY KEY (id
) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1
エラーが発生した場所:2009-09-08 17:42:07 行番号:35 エラー コード: 1050 - テーブル 'ads' は既に存在します
クエリ: 1 スタンフォード大学 6700 http://www.orkut.co.in . . .
mysql - mySQLテーブルを削除できません。(エラー1050)
削除されない厄介なテーブルがあり、開発環境の更新を妨げています:(
私はこのテーブルが存在することを知っています。例...
しかし、私がそれを落とそうとすると...
それは機能しません、テーブルはまだそこにあります、そして警告はこれを言います...
かなり唖然とした感じ。
mysql - Mysql1050エラー「テーブルはすでに存在します」実際には存在しません
私はこのテーブルを追加しています:
そして、私は1050の「テーブルはすでに存在します」を取得します
しかし、テーブルは存在しません。何か案は?
編集:誰もが私を信じていないようですので、詳細:)
収量:
1146-テーブル'gunzfact_vbforumdb.contenttype'が存在しません
と
収量:
1050-テーブル'contenttype'はすでに存在します
sql - データを含む既存の MySQL テーブルの ID を変更して、最後の最大 ID から自動インクリメントする方法は?
かなり大きなデータベースを SQL Server から MySQL に移行することができました。テーブルには、別のテーブルの外部キーである主キーとしての ID に基づく関係があるため、移行中に主キーを自動インクリメントに設定しませんでした。
新しいレコードを追加するために、すべてのテーブルの主キー 'id' 列を自動インクリメントに変更しますが、各テーブルの id 列の最後の最大数から開始します。
私がすでに持っている関係を失うことなくこれを行うための最良の方法は何ですか?
更新:自動インクリメントを追加しようとすると、次のエラーが表示されます:
mysql - MySQL データ モデルのバージョン管理と同期をどのように行っていますか?
MySQL データ モデルを保存し、変更が行われたときに (または少なくとも毎晩) 開発データベース サーバーに変更を自動的に適用する最良の方法は何ですか?
たとえば、今日、私は自分のプロジェクトに取り組んでおり、データベースにこのテーブルを作成し、ステートメントを SQL ファイルに保存して、後で本番環境にデプロイします。
そして明日、各犬の品種も記録したいと思います。そこで、SQL ファイルを次のように変更します。
このスクリプトは、最初のリリースでは本番環境で機能しますが、開発データベースの更新には役立ちませんERROR 1050 (42S01): Table 'dog' already exists
。. さらに、この変更が最初のリリース後に行われた場合、本番環境では機能しません。だから私は今、本当にALTER
テーブルに着く必要があります。
だから今、私は2つの懸念があります:
- これは、データ モデル (SQL ファイル内の一連の create ステートメント) を保存する方法ですか?
- このような変更をデータベースに適用するにはどうすればよいですか?
私の目標は、変更を正確にリリースし、継続的な統合を可能にすることです。私は DDLSYNC というツールを使用して、Oracle データベースの違いを見つけて適用しますが、MySQL に類似したツールが存在するかどうかはわかりません。
mysql - 既存のテーブルに外部キーを追加すると、エラー1050テーブルがすでに存在します
列を持つテーブルCustomizationSetがあります:
そして、既存のデータを含むテーブル列への登録:
実行してみると
MySQL Workbenchでは、エラー1050Table'。\dbname\registration'が既に存在します。
UIを使用して[テーブルの変更]ダイアログの[外部キー]タブで外部キーを追加しようとし、参照テーブルとしてCustomizationSetを選択すると、列のリストでcustomization_set_guidを選択できません。
この外部キーを追加できない理由がよくわかりません。追加したテーブル間に外部キーを正常に作成しました。登録テーブルはしばらくの間存在していました...
mysql - Mysql1050の後に1051が続く
これを理解するのを手伝ってください。データファイルの削除と再作成、テーブルのフラッシュ、データベースとサーバー全体の再起動をすでに試しました。
InnoDBはForceRecovery=4にあります
mysql - MySQLで外部キー制約を追加しようとするとエラー1050
UserOrderテーブルにdiscountcodeという列を追加しようとしました。これはnull許容の外部キーです
エラーは2行目で発生します。両方のテーブルでInnoDBが実行されています。私はMySQL5.5.11を使用しています。
これがエラーログです...
これが「showcreateTableUserOrder」です。
これがshowcreatetableDiscountCode...です。
php - テーブルが存在する場合、CREATE TABLE IF NOT EXISTS が失敗する
次のコードがあります。
どの出力...
私が理解できないのはIF NOT EXISTS
、そのテーブルが既に存在する場合、SQL クエリの実行をキャンセルすることは想定されていないということです。つまり、テーブルが存在する場合、その if ステートメントを終了し、何もエコーアウトせず、クエリを実行しようとしないでください。
ユーザーに何も出力せずに「存在しない場合はテーブルを作成する」ための最良の方法を見つけようとしています。