更新ステートメントを使用せずにテーブルのレコードを更新する方法を誰でも知ることができます。 select文を使用することができます。更新ステートメントを使用しない更新テーブル
答えて
私がすることができます更新テーブル更新せずに文を考えていません。
多くの場合、データベースに対するアクセス権は、選択OR更新または削除に対して与えられます。これは、それぞれが表に非常に特殊な影響を与えるためです。システム管理者がセカンダリ・エフェクトを持つように設定されているトリガまたはストアド・プロシージャが存在しないかぎり、どのデータベースでもSELECT文が根本的な変更を行うことはほとんどありません。 –
select文では不可能です。
行を削除し、同じ行+更新を挿入することができますが、多くの点では更新のようですが、外部キーには多くの問題が発生します。
ああ、あなたのDBAがあなたを殺すかもしれない。
どのような奇妙な答え、どのように選択して削除して挿入しますか? – rrrr
私はそれが選択だと言っていない!私の最初の文は、OPの2番目の文の中の文を否定します。私の2番目の文は、OPの最初の文で質問に答えます –
これは、使用しているツールと実際に達成したいものによって異なります。
- selectステートメントから取得したデータを更新できるライブラリがあります。 (例えば、ORMのNHibernateのように、私はADO.NETとも思う)。これらのライブラリは更新文を作成しています
- select文を実行するだけでデータを変更する関数やトリガを使用できます。これらの関数またはトリガーでは、まだ更新ステートメントがあります。
- セキュリティ上の理由から、誰もselectステートメントにupdateステートメントを挿入しないようにする必要があります。したがって、単にselect文を実行するだけではありません。更新ステートメントを使用せずにテーブル の一部のレコードを更新する方法
。
MERGE
ステートメントを使用してください。
select文を使用することができます。
論理的には、更新、削除および挿入である:次いでDELETE
次いでINSERT INTO..SELECT
ステージングテーブルから、必要に応じてデータを修正、ステージングテーブルにINSERT INTO..SELECT
。
モジュールが作成したselect文を実行したときに、どのようになってこのようになったのかを質問していましたが、SQLインジェクションを読み込む必要があります。何らかの更新ステートメント(更新だけでなく、削除や挿入、またはマージの使用を含む)を行わずに、ユーザーがテーブルに対する更新権限を持っている必要がありますが、選択ステートメントに更新を追加することはできますあなたがSQLインジェクションを避けるためにそれを正しくパラメタ化していない場合は、人生で作成されます。
あなたは、これは前の行を削除して、同じ主キーと更新された列の値を持つ新しい行を挿入します
REPLACE INTO tablename(primary key, ...{rest of the columns in the table})
VALUES(the same primary key, new values);
を使用することができます。それほど価値があるわけではありませんが、他の方法があるかもしれません。
- 1. 更新ステートメントがテーブルを更新しないのはなぜですか?
- 2. postgresSQL - selectステートメントを使用してテーブルを更新する
- 3. selectステートメントを使用してMySQLテーブルのレコードを更新する
- 4. 正しい更新ステートメントc#
- 5. アクセス更新クエリSETステートメントの両方のテーブルの更新
- 6. 更新ステートメントのウィンドウ関数を使用
- 7. 2更新ステートメント
- 8. SQL更新ステートメント
- 9. アトミック更新ステートメント?
- 10. 更新ステートメントが機能しない
- 11. 新しいテーブル値を使用したデータベースの更新
- 12. SQL Server - 更新ステートメントでユーザー定義関数を使用してテーブルを正しく更新する方法
- 13. C#OleDB更新ステートメントが更新されない
- 14. 不正な更新ステートメント
- 15. 広範な更新ステートメント
- 16. SQL Serverテーブルの更新中のテーブルが更新されない
- 17. MySQLの更新ステートメント
- 18. ハイブの更新ステートメント
- 19. Android - SQLite更新ステートメント
- 20. エンティティフレームワークの更新ステートメント
- 21. 更新のCASEステートメント
- 22. サブフォームデータ更新テーブルなし
- 23. TableAdapter - キーを使用しない更新
- 24. MySQL:IF ELSEステートメントを使用してテーブル間でELSE INSERTを更新する場合
- 25. エンティティフレームワークがテーブルを更新しない
- 26. mySQL_queryテーブルを更新しない
- 27. Laravel:AJAXデータベースのテーブルを更新しない
- 28. 更新ステートメントとwhere句を使用してデータベース内のパーツテーブルを更新しようとしています
- 29. TSQL:Withステートメントを使用して値を更新しますか?
- 30. VB.NetデータベースをSQL更新ステートメント
いいえSELECTステートメントでは不可能です。誰かがUPDATE特権を持っていないのにもかかわらず、これは私には聞こえるが、依然としてUPDATEしたい。その場合、特権の問題に対処します。 – DanSingerman