アクセスカウンタ - 1.13データベースのクエリ言語(2)
。あなたは第八章で覚えているのだろうか、私はシンプルなページは、アプリケーションのアクセスカウンタを使用して作成与えるか?友人からの手紙は、彼が変数NumVisitsカウントのカウンタの値を変更するには開始されたときに最終的な結果は何の効果も持っていなかった後に、なぜ私は尋ねた。私も最初は困惑しています、次のように、私たちはこのソースを思い出してみましょう:
shinobi.jp - アクセス解析, ブログ, カウンター とかを提供しているNINJA TOOLSの別館的サイト
< %
Dim NumVisits
NumVisits=0
Application.Lock
Application("NumVisits") = Application("NumVisits") + 1
Application.Unlock
%>
ようこそ私たちのサイトに、あなたが最初のページ未満%=アプリケーション("NumVisits")は、%>の訪問者!
あなたはカウンターNumVisits結果を変更するには変数の値を変更しようとする場合は、この過程で、それは絶対に不可能だ。変数の値の値は、アプリケーションが不可能であり、変更する必要があるので、この2つは関連していない。ので、ここで定義と変数の割り当てが重複している。どのようにアプリケーション("NumVisits")に来てください、それの初期値を定義する?次の変更手順を考慮してください:
< %
If Application("NumVisits")< 999 then
Application("NumVisits")=999
End If
Application.Lock
Application("NumVisits")=Application("NumVisits")+1
Application.Unlock
%>
ようこそ私たちのサイトに、あなたが最初のページ未満%=アプリケーション("NumVisits")は、%>の訪問者!
。。
私たちはあなたに、SQLステートメントの残りの部分を継続し、簡単なのSelect文が、今日、で学んだデータ操作言語で次の、データ定義言語とデータ操作言語:SQL言語は、2つの部分に分けることができる。
SQLは、完全なデータ処理言語だけでなく、データベースのクエリ、およびデータをSQLステートメントの改訂SelectステートメントのSQLクエリの複雑さの支援を受けて、更新、および比較コンテンツデータベース内のデータベースを変更するには、特に単純な。しかし、DBMSのデータは多くのデータのクエリによってもたらされるリスクよりを更新。データベース管理システムは、データベースに有効なデータを確実にするために格納されているデータの整合性の保護の期間を変更する必要があります、一貫性を維持しなければならないデータベースは、DBMSはまた、ユーザーを確保するための変更は、操作には影響しませんマルチユーザの同時更新を調整する必要があります他のユーザーの。
次の3つのしているデータベースのSQL文の内容を変更するために使用されます:
図1は、挿入、テーブルにデータの新しい行を追加する
2、削除、表の行からデータを削除する
3は、Updateは、データがデータベースに既に存在して変更
標準的な構文:
INSERT INTO table_name
(col1, col2...)
VALUES(value1, value2...)
Insert Into
Salesreps (name,num,sales,hire_date,income)
values (\\\'shusheng\\\',9,10000,\\\'23-Feb-99\\\',2000)
このステートメントでは、列名は、カンマで区切って括弧内に記載されている次の各列に同じデータにカンマで区切られた値のフレーズがかっこ、それは、データ、およびカラム名の順序が同じであることに注意してくださいと単一引用符は、文字列Zeyiを分離する場合。概念的に言えば、挿入ステートメントは、それを記入し、テーブルに新しい行を追加する値句からのデータを使用して、データラインを使用して構造の一貫性の確立を記載され、テーブルの行は、そのため、行がある場合、ソートされていないテーブルの先頭または末尾、または概念二行の間に挿入。新しい行の後に挿入するステートメントは、テーブルの一部です。。
Insert文はまた、このような形で、テーブル、Insert文に複数の行は、データ値の新しい行がテキストで指定されたステートメントで明示的にされていないターゲットにデータを追加することができますステートメントは、データベースクエリを指定。値は、最初は奇妙に思えるデータベース自体から、行を追加非常に有用であるいくつかの特定の状態で、。
Insert into oldorder (Num,Date,Amount)
Select Num,Date,Amount
From order
Where Date<\\\'\\\'
このステートメントは、実際には非常に簡単ですが、複雑に見えるかもしれませんが、文が完全に列oldorderの新しい行を受信し、データを受信する単一のINSERTステートメントと同様のテーブルを識別する。文の残りの部分は、テーブル内の注文データを取得するクエリです。。
私たちは、Updateの使用方法を見てみましょう、Updateステートメントは、1つまたは複数の列の選択された値で、単一のテーブルの行を更新するために使用される。。。
標準的な構文:
UPDATE table_name
SET columnname1 = value1
[, columname2 = value2]...
WHERE search_condition
Update customers
Set credit=100000.00,id=99
Where name=\\\'asp\\\'
この場合において、我々は10000000クレジットの値を更新し、自分のID 99に変更、顧客の顧客のASPで顧客というテーブルをする。次の例を見てみましょう:
Update customers
Set credit=200000.00,state=021
Where ID in (80,90,100,120)
我々は、検索条件の結果は"true"の行の内容を更新、実際には、プロセスを反復処理するために、UpdateのSQLステートメントを使用して取引が行でテーブル行で指定されていると、その見ることができ、検索条件の結果を飛ばしてください"false"または"空"行。
最後に、見てDelete文を取る。
標準的な構文:
DELETE FROM tablename
WHERE condition
。次の例を参照してください:
Delete from order Where ID=99
。これは、作成および変更するデータベースの構造を使用する場合、CREATEおよびDROPステートメントを含むステートメント。
標準的な構文:
CREATE TABLE table_name
( field1 datatype [ NOT NULL ],
field2 datatype [ NOT NULL ],
field3 datatype [ NOT NULL ]...)
CREATE TABLE BILLS
( NAME CHAR(30),
AMOUNT NUMBER,
ACCOUNT_ID NUMBER)
create table文以前の説明よりも理解して、まだ非常に直感的な困難にもかかわらず、。法案は、新しいテーブルを与えると指定したテーブルの3つの列とデータ型の名前を。。
、あなたは製品情報を保存するために必要と思われる場合は、データベースから削除されたテーブルに含まれている表をドロップステートメントを、すべてのデータを使用することができます。
。次のものから始めて、著者が紹介するASPは、組み込みのActiveXコンポーネントのので、しばらくお待ちください。