この foxpro から sql サーバーへの移行要件を支援してください。
作業領域でテーブルが開いているかどうかを判断する foxpro のこの関数 USED() があります。同じ仕事をするSQL Serverにそのような機能はありますか?
この foxpro から sql サーバーへの移行要件を支援してください。
作業領域でテーブルが開いているかどうかを判断する foxpro のこの関数 USED() があります。同じ仕事をするSQL Serverにそのような機能はありますか?
私は何年も前にFoxproからSQLに移行しました。SQL Serverでの動作の概要:
USE
コマンドと非常によく似ています。例を次に示します。ログインでTestAとTestBの2つのデータベースにアクセスできるとします。両方のデータベースにはテーブルMyDataが含まれており、各テーブルには異なるデータ(AデータとBデータ)が含まれています。ログインすると、コンテキストが1つのデータベース、たとえばTestAに設定されます。を実行するSELECT * from MyData
と、データベースTestAからそのテーブルの内容を取得します。TestBからデータを取得する場合は、データを取得するSELECT * from TestB.dbo.MyDta
データベースを指定して実行するか、データベースのコンテキストを変更する必要があります。プログラム的には、これはUseコマンド(例: `USE TestB')で実行されます。
これは、「それがどのように機能するか」の非常に単純な説明です。それはすべてプログラミングです。つまり、使用しているツール(アプリケーション)と達成しようとしているタスクに応じて、特定のアクションを実行する方法が数十あります。SQL Books Onlineのすべて、SQLServerに付属のドキュメントを読むことを強くお勧めします。Microsoftはこの製品のドキュメントを非常によく作成しました。
フィリップは、SQLですべてが「オープン」であることについて正しいです。ただし、少し違った表現をすると思います。SQL-Serverが実行されている場合(通常、サーバー自体の起動時に開始される自動化されたサービスであるため)、SQLにはファイルの「ハンドル」を開いて、コピー、削除、移動などを防止します。
他の場所や別のサーバーにコピー/移動したい場合は、ハンドルを解放する「データベース」をデタッチする必要があり、何でもできます。
SQL-Serverでできることについて。データベースを明示的に開く必要はありませんが、database.table参照によってクエリを修飾できます...など
select t1.field
from YourDatabase.SomeTable t1
where t1.SomeField = ?whatever
データベースが接続されている限り、問題はありません。