問題タブ [alter]

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.

0 投票する
1 に答える
513 参照

mysql - MySQL ALTER TABLE ORDER BY f1 DESC - これは SELECT クエリをブロックしますか?

f1 と f2 などの 2 つの unsigned int フィールドで構成される MySQL MYISAM テーブル (tbl など) があります。f2 にインデックスがあり、テーブルが非常に大きい (約 320,000,000 行以上)。このテーブルを定期的に (1 週間に約 100,000 行で) 更新し、ORDER BY (リアルタイム クエリでは非常に時間がかかる) を実行せずにこのテーブルを検索できるようにするために、テーブルを物理的に ORDER します。行を取得する方法に応じて。

そこで、ALTER TABLE tbl ORDER BY f1 DESC を実行します。(サーバー上にテーブルのコピー用の十分な物理スペースがあることはわかっています。)この操作中に一時テーブルが作成され、SELECT ステートメントが現在の行に影響を与えないことを読みました。

ただし、これは事実ではなく、ALTER テーブルと同時に発生するテーブルの SELECT ステートメントがブロックされ、終了しないことを経験しました。ALTER TABLE tbl が完了すると (本番サーバーで約 40 分)、tbl の SELECT ステートメントが再び正常に実行されます。

「ALTER table tbl ORDER BY f1 DESC」が他のクライアントによる tbl のクエリをブロックしているように見える理由はありますか?

0 投票する
3 に答える
7511 参照

mysql - MySQL ALTER TABLE、一意のランダム値を持つ列を追加

「」という列を追加したテーブルがありますphone。このテーブルには、auto_incrementsの主キーとして設定されたIDもあります。重複しないランダムな値を電話の列に挿入するにはどうすればよいですか。次のUPDATEステートメントはランダムな値を挿入しましたが、すべてが一意であるとは限りません。また、私は売られていませんが、phoneフィールドを正しくキャストしましたが、ALTER TABLEコマンドを使用してint(11)として設定しようとすると問題が発生しました(主に、正しく実行されましたが、新しい行を追加すると電話番号、挿入された値は別の番号に変換されました)。

テーブルスペック

0 投票する
2 に答える
833 参照

sql-server-2008 - SQLは再帰関数を変更します

SQLServer2008を使用しています。

再帰関数でALTERを実行したい。変更はパラメータを追加します、それはそれを窒息させるようです。

関数には依存関係がないため、DROP + CREATEを安全に実行できますが、関数に依存関係がある場合はどうすればよいですか?

エラーメッセージはこれです

メッセージ8144、レベル16、状態2、サーバーTESTSERVER、プロシージャfn_IsOwnerFunction、行177プロシージャまたは関数dbo.fn_IsOwnerFunctionに指定された引数が多すぎます。

このメッセージは、関数がそれ自体を参照している行に対して、さらに数回表示されます。注:これは、より多くのパラメーターを持つ新しいバージョンを指します。DROP + CREATEの後、ALTERスクリプトはエラーなしで機能します。

0 投票する
2 に答える
8082 参照

sql - 削除時にSQLヘルプを制限する

次の2つのテーブルがあります。

所有者の2番目の列(P_ID)は、ペットの最初の列(P_ID)への外部キーです。

DB2で、ON_DELETE RESTRICT制約を追加しようとしています。これにより、誰かが所有者テーブルの所有者を削除しようとした場合、その所有者がペットの所有者である場合、削除操作は拒否されます。ON_DELETE RESTRICTコマンドを使用する必要があることはわかっていますが、その方法がわかりません。

私はこれを試しました:

無駄に。

0 投票する
3 に答える
348 参照

mysql - MySQL テーブルのテーブル構造を変更する

MySQL を再訪し、テーブルの構造を変更しようとしています。2 つの行を varchar(30) からそれ以上に変更したいと考えています。

私はそれをグーグルで検索し、正しいステートメントと思われるものを試しましたが、構文エラーが発生しています:

ただし、このステートメントでは構文エラーが発生します。また、テーブル/列名の周りに '' を付けずに試してみましたが、うまくいきませんでした。

「エラー 2064 (42000): SQL 構文にエラーがあります....」

誰かが私の記憶をジョギングできますか?

0 投票する
1 に答える
243 参照

mysql - mysqlはテーブルに変更します

以下のmysql変更コードをphpmyadminを介してデータベースに1つずつドロップします。これは正常に機能します。一度にすべてをドロップする方法を教えてくれる人はいますか?または、それを実行する可能性のあるPHPコードのサンプルを知っていますか?教えてください。

0 投票する
11 に答える
725816 参照

sql-server - データを失うことなくSQLデータベースの列データ型を変更する方法

intSQL Serverデータベースがあり、列の1つのタイプをからに変更できることに気付きましたbool

そのテーブルにすでに入力されているデータを失うことなく、どうすればそれを行うことができますか?

0 投票する
1 に答える
183 参照

mysql - MySQL:複数の列を追加するときに各列に対してcolumn_definitionを繰り返さない方法

私はmysql5.0を実行しています。それぞれの列タイプを繰り返さずに、新しい列(すべて同じタイプ)をテーブルに追加するSQLクエリを作成するにはどうすればよいですか。

例えば:

上記の例では、一般的なタイプは'TEXT NOT NULL'です。実際のシナリオには、例で指定されている2つだけではなく、より多くの列があることに注意してください。

要約すると、一般的なタイプを「因数分解」する方法はありますか?

0 投票する
1 に答える
2850 参照

oracle - 異なるスキーマをループして、それぞれでいくつかのSQLを実行する方法は?

70 の Oracle スキーマがあり、それぞれで同じスクリプトを実行する必要がある場合があります。

これはこれを達成するための最良の方法です。

CURSORで可能ですか?

今のところ私はそれをやっています

そして、「====」をスクリプトに置き換えます。メモ帳++で実行していますが、スクリプトを手動で準備する必要があり、スクリプトが長い場合は、改行なしで複数のチャンクに分割して置換する必要がありますチャンクごとに

これをもう少し自動化したい。

0 投票する
1 に答える
12327 参照

sql - Magentoはモデルリソースに列を変更/追加します

フラットテーブルに列を追加したり、列を削除したりする必要があるモジュールがあります。これはセットアップで実行できることはわかっていますが、Webサービスから毎晩データをテーブルにインポートする必要があります。Webサービスは、列名を変更する場合があります。

まず第一に、生のSQLを使用せずにMagentoでテーブル構造を変更する方法を知っている人はいますか?第二に、誰かがこれを行うための最良の方法を知っていますか?

Magentoで使用されているEAVデータパターンをまだマスターしていませんが、いつか学びたいと思っています。助けていただければ幸いです。