d.DepartmentIDデータベースオブジェクトには、完全修飾名を使用してアクセスすることもできます。[server_name].[database_name].[schema_name].[table_name]サーバーやデータベース名を変更すると、無効なオブジェクト名のために完全修飾名を使用したクエリが実行されなくなるため、これは必ずしも推奨されません。前のフィールドは省略できます。データベースには複数のスキーマが存在するのが一般的です。この場合、スキーマ名は可能な限り省略しないでください。使用すると、後で問題が発生する可能性があります(新しい列がテーブルに追加されたり、列がテーブルに再配置された場合)。列の順序、または戻された列の数。したがって、プロダクションコードのSELECT文では常にカラム名を明示的に指定する方が安全です。table_name条件に一致する行を選択する一般的に、構文は次のとおりです。'Smith'条件は複雑になる可能性があります。このコードはHelloworldsテーブルからすべてのデータを削除します。違いは、Truncateでwhere句を使用できないことです。Truncateテーブルは、トランザクションログスペースが少なくて済むため、削除よりも優れていると見なされます。ID列が存在する場合、ID列は初期シード値にリセットされます(たとえば、自動増分IDは1から再開されます)。これは、ID列が別の表の外部キーとして使用されている場合、矛盾する可能性があります。単純な形式の更新では、テーブルの特定のフィールドのすべての値がインクリメントされます。フィールドを1ずつ増加させる例です(すべての行)。これは、誤って特定の行のUPDATEを表のすべての行に対して行うと、データが破損する可能性があるため危険です。!!!"に更新します。注:更新ステートメントでは、要件が異なる場合を除いて、テーブル全体の更新を避けるために「where」節を使用することをお勧めします。Language)コマンドで、変更をトランザクションにラップすることができます。適切なデータを変更していることを確認できる方法の1つは、トランザクションを使用することです。DMLの変更は影響を受ける行をロックします。トランザクションを開始するときは、トランザクションを終了する必要があります。しないと、DMLで変更されたすべてのオブジェクトは、トランザクションを開始した人によってロックされたままになります。使用してトランザクションを終了することができます。トランザクション内のすべてを元の状態に戻します。別のDML文を使用せずに変更を取り消すことができない最終状態にデータを置きます。dbo.test_transactionノート:これは、エラー処理を含まない単純化された例です。どのデータベース操作も失敗する可能性があり、したがって例外がスローされます。このような必要なエラー処理がどのように見えるかの例を次に示します。エラーハンドラなしでトランザクションを使用しないでください。分離レベルに応じて、トランザクションは照会または変更されているデータにロックをかけています。トランザクションが長期間実行されていないことを保証する必要があります。トランザクションがデータベース内のレコードをロックし、他の並列実行トランザクションとのデッドロックにつながる可能性があるからです。操作をカプセル化したトランザクションを可能な限り短くし、ロックしているデータの量による影響を最小限に抑えます。