問題タブ [temporal-tables]
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.
tsql - テンポラル テーブルをレプリケートする方法
テンポラル テーブルがあり、トランザクション レプリケーションを使用してレプリケートしたいと考えています。履歴テーブルには、トランザクション レプリケーションに必要な主キーを含めることはできません。GENERATED ALWAYS AS ROW START
現在のテーブルをレプリケートしようとすると、またはGENERATED ALWAYS AS ROW END
列に挿入できないため、レプリケーションが失敗します。
sql-server - システムのバージョン管理された列が null 可能だった場合に列を Not Null に変更
SQL Server とシステム バージョン管理された (テンポラル) テーブルを使用しています。私のメイン テーブルには、INT
現在 NULL を許可している列があります。null を許可しないようにこれを更新したいのですが、テーブルのシステム/履歴コピーでは null が許可されています。
私はこのステートメントを実行します:
そして、私はこのエラーを受け取ります:
値 NULL を列 'MyInt'、テーブル 'mydb.dbo.MyTable_History' に挿入できません。列はヌルを許可しません。更新は失敗します。
このスクリプトを使用して、システムのバージョン管理テーブルを作成しました。
このシナリオで、メイン テーブルの列を null 非許容にする他の方法はありますか? システムでバージョン管理された既存の null 値を任意のガベージ値で (おそらく) 手動で更新できると思いますが、このシナリオはテンポラル テーブルでサポートする必要があるようです。
sql-server - SQL Server - テンポラル テーブル - 選択した列のみ
私が取り組んでいた最近のプロジェクトの要件の 1 つは、監査証跡の一部としてデータベース テーブル データの履歴を維持することでした。技術的な解決策について最初に考えたのは、トリガーを使用することでしたが、いくつかの調査の後、SQL Server テンポラル テーブル (コア SQL Server 2016 の一部) について学びました。私はこれについて多くの調査を行い、テンポラル テーブルを有効に活用できることを確認しました。
テンポラル テーブルの詳細: SQL Server 2016 でのテンポラル テーブル履歴の管理
ただし、いくつかの列が変更された場合にのみテンポラル テーブルのデータが作成されるようにしたいと考えています。
この上にテンポラル テーブルを作成すると (SYSTEM_VERSIONING = On)、名前と姓ではなく、電話番号が変更された場合にのみテンポラル テーブルにデータが挿入されます。