問題タブ [alter-table]
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 - SQL Server がストアド プロシージャのビューを変更できないのはなぜですか?
MS SQL Server を使用しています。「alter view VIEWNAME as ([some sql])」などを実行して、ストアド プロシージャ内からビューを変更したいと考えています。
Google が投げかけたいくつかのページでは、これは直接サポートされていない (また関連する alter-table ステートメントもサポートされていない) と主張していますが、次のような構造を使用して回避する方法の例もあります。
コードをリテラル文字列として記述するのは、SQL であっても少し臭いです。
私の質問:
- これがサポートされていないのはなぜですか? これを sproc から実行することと、スタンドアロンのステートメントとして実行することの違いは何ですか?
exec
リテラル SQL 文字列を ing することによる回避策が機能するのはなぜですか? ステートメントについての私の理解ではexec
、SQL をインラインで実行するだけですが、それは正しくありませんか?- (楽観的ではありません) ストアド プロシージャ内からビューを変更するより良い方法はありますか?
sql-server - SYSADMIN権限なしでリンクサーバー上のデータベースを変更するにはどうすればよいですか?
私の要件は、alterを実行するユーザーがsysadminになることはできないということです(他のすべての権限を持つことはできますが、sysadminは持つことができません)。
リモートサーバーを変更する必要があるローカルサーバーからクエリを実行しています
このクエリは、sysadmin権限をユーザーに追加すると機能しますが、権限がないと、次のエラーが発生します。
私はSQLServe2008を使用しています。
助けてください!
sql - ALTER TABLE を使用して新しい列を追加し、一意にする方法は?
ALTER TABLE
新しい列を追加して一意にするにはどうすればよいですか?
sql-server - SQL Serverの列の追加ステートメントで名前付きのデフォルトの制約を作成できますか?
SQL Serverでは、テーブルに新しい列があります。
デフォルトの制約を指定せずにNOTNULLを指定したため、これは失敗します。テーブルにデフォルトの制約を設定しないでください。
これを回避するために、デフォルトの制約を使用してテーブルを作成し、それを削除することができます。
ただし、デフォルトの制約をこのステートメントの一部として指定する方法はないようです。そのため、デフォルトの制約を取り除く唯一の方法は、sys.default_constraintsでそれを検索するストアドプロシージャを用意することです。テーブル。
これは、頻繁に発生する可能性のある操作にとっては少し厄介/冗長です。誰かがこれに対するより良い解決策を持っていますか?
mysql - 複数の列でテーブル列のデータ型を変更するにはどうすればよいですか?
例えば:
ただし、上記は機能しません。MySql 5.x を使用しています
mysql - MySQL はテーブルからすべてのインデックスを削除します
私は、多くの変更を加えてしばらく稼働している MySQL データベースを持っています。最近、私はそれをよく見て、場合によっては同じフィールドのインデックスを 2 倍にしていることに気付きました。一部のインデックスが欠落しており、一般的に、すべてのインデックスが非常に混乱しています。
テーブルからすべてのインデックスを削除したい。後でALTER TABLE
、関連するインデックスを実行して追加するスクリプトを準備しました。
テーブルからすべてのインデックスを削除する方法はありますか?
c# - Migrator.NET を使用したクライアント側からの DB2 REORG TABLE
DB2 データベースでMigrator.NETを使用していますが、現在の移行でALTER TABLE
ステートメントを実行すると、テーブルが "再編成保留状態" になります。> REORG TABLE TableName
この状態では、他の操作を行う前に、テーブルを再編成する必要があります。
これを実行してみました
Database["DB2"].ExecuteNonQuery("REORG TABLE MyTable");
REORG
しかし、どうやらコマンドはサーバー側のみであり、クライアントから呼び出すことができないため、失敗しました。次に、REORG ステートメントを呼び出すストアド プロシージャを作成しようとしましたが、正しい構文に苦労しています。
誰でもこの問題の解決策を提案できますか?
mysql - MySQLで列の名前を変更中にエラーが発生しました
テーブルの列の名前を変更するにはどうすればよいxyz
ですか?列は次のとおりです。
名前を変更したいmanufacturerid
PHPMyAdminパネルを使用しようとしましたが、次のエラーが発生します。
sql - 列を追加するための簡単なボタン
ssms 2008でテーブルを右クリックし、[スクリプトテーブル]を選択して[新しいウィンドウにテーブルをドロップして作成]を選択すると、スクリプトを実行しようとしましたが、エラーが発生します。
そのとき、Drop and Create生成スクリプトのポイントは何でしたか?
ありがとう、
ロッド。
sql - テーブルの2つの列を変更する-危険な操作ですか?
MSSQL Server 2005には、最大100列、約3,000万行のテーブルがあります。
2つの列を変更する必要があります-それらのタイプをVARCHAR(1024)からVARCHAR(max)に変更します。これらの列にはインデックスがありません。
ログがいっぱいになり、操作が失敗するのではないかと心配です。そのような操作が失敗しないようにするために必要な、データとログの両方の必要な空きディスク容量をどのように見積もることができますか?