アクセスのデータベースのフィールドを日付/時刻型にしております。aspでINSERTを使用しています。テキスト型でしたら、NULLの許可がありますが、日付/時刻型にはそのような項目がありません。時刻型にNULLでセットしたいのですが、その方法がわかりません。いろいろ調べましたが…。ご伝授の程、よろしくお願い致します。

例.
フィールドaにhtmlから引きわたったTimesをセットする。
※Timesには空白("")がRequestされています。
 テーブル名db_1

書き込み(##を使用していません)
insert INTO db_1(a)VALUES ('"& Request("Times") &"')"

更新
update db_1 set a=#"& Request ("times") & "# where id = "&Request ("id")&"")

A 回答 (3件)

#2について、


ちょっと、そちらでどういう風にやられているのかはよくわからないのですが、
多分、SQLコマンドを文字列のような形で保持して
発行されてるんだと思うのですが、
そうだとすると、単に、文字列(SQLコマンド)を動的に作ればいいですよね。
つまり、
"INSERT INTO db_1 VALUES ( field1,field2 ,field3 ,field4 );"
のfieldの各部分を必要なら
~" & IIF(Request("Times")="","NULL","'" & Request("Times") & "'") & "~
に置き換えればいいと思うのですが
IIFがVBScriptにないとしても、言いたいことは同じです。(変数にして置き換えすればいいですよね)
    • good
    • 0

#1の補足について


IFを使うしかないと思いますが、

IF Request("Times")="" then
insert INTO db_1(a)VALUES (NULL)
ELSE
insert INTO db_1(a)VALUES ('"& Request("Times") &"')"
END IF
みたいな感じでうまくいきませんか?

この回答への補足

ありがとうございます。

Time(時刻型)の項目が5つあります。そのすべての判定を行うにはIFで判定させると、すこし苦労します。

Timeの項目がNULLの場合は、NULLをVALUES ('"& Request("Times") &"')にセットしたいのですが‥

すみませんがよろしければ、ご指導の程、宜しくお願い致します。

補足日時:2004/10/19 10:09
    • good
    • 0

NULLをINSERTでセットする場合は


単に
VALUES(NULL)
だと思います。
なので、Timesが空白の時NULLをセットするようなものと振り分けたらいいと思います。

勘違いしてたらすみません。

この回答への補足

早速の回答ありがとうございます。

>Timesが空白の時NULLをセットするようなものと振り分けたらいいと思います。

詳しく教えていただけないでしょうか。

普通時(2004/10/15など)と空白時(NULL)を区別させるにはどのようにすればよろしいでしょうか。

空白時にはVALU(#'& times &'#)をVALUE(NULL)にするには、IF文を使うしかありませんのでしょうか。

ご指導の程、よろしくお願いいたします。

補足日時:2004/10/18 21:38
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QMr. Sato will now be in charge of sales. のnow

Mr. Sato will now be in charge of sales.
サトウさんはこれから販売を担当することになる。

という例文がありました。

ここに now が入るのが少し気になっています。

Mr. Sato will be in charge of sales.
だと、この先いつからの事なのか分からないのでnow が入っているのだと思いますが、
Mr. Sato will be in charge of sales from now. でも同じでしょうか?

元の文のように、will と be の間に入る場合、前置詞は不要でしょうか?

細かい疑問で恐縮ですが、宜しくお願いします。

Aベストアンサー

「now」だけで「今から」という意味にもなります。特に「will」などの未来の表現があるときはそうではないでしょうか。
「Mr. Sato will now be in charge of sales.」において前置詞が不要なのは、「now」が副詞として機能しているからです。

「Mr. Sato will be in charge of sales from now.」では「now」という名詞に、起点を表す前置詞「from」がついて「今から」という意味になっています。

一つ付け加えると、「from now」より「from now on」の方が好ましいですね。

Qinsert時に日付のフィールドにnullを入れたい

テーブルに以下のフィールドがあります。
[No],[区分],[キーNo],[日付]
このテーブルに日付のデータのない、以下のようなデータをインサートしたいのですが、
[No],[区分],[キーNo]
1 ,kbn1 , key1


strSQL1 = "INSERT INTO テーブル1"
& " ([No],[区分],[キーNo],[日付])" _
& " VALUES ("1","kbn1","key1",NULL )"

とするとエラーが出てしまいます。日付フィールドに何も入れないようにinsert文を書くにはどうしたらよいでしょうか。
すみません、アドバイス等宜しくお願いします。

Aベストアンサー

strSQL1 = "INSERT INTO テーブル1"
& " ([No],[区分],[キーNo])" _
& " VALUES ("1","kbn1","key1")"
でよいのでは?
それより[日付]フィールドでNull許可してないのでは?

Qdue to limitations in amount of charges - 退任の理由

こんにちは。和訳のアドバイスをお願いいたします。

ある会社のニュースレターの中で、意味が分からないところがあります。

<タイトル>
Resignation of two auditors due to limitations in amount of charges

<本文>
Company A announces the resignation of two auditors, Mr. B and Mr. C, as they exceed the limits in such charges established by the issuing regulations.

2人の監査役が退任した理由は何なのでしょうか?
chargesは責務という意味でしょうか?'the issuing regulations'が何を指しているのかもよく分かりません。ちなみに、このニュースレターは上記の文章から始まっており、それに続く文章の中にも手がかりらしきものが見当たりません。

Aベストアンサー

原文を拝見しましたところ、会社側もはぐらかして書いているような印象を受けます。つまり二名の辞任は名誉なことでなく、むしろ何かをやらかして「解雇」されたのだろうと察します。

ご存知の通り、charge とは「告発、訴状」という意味があります。でも、その場合は amount ではなく number of charges と言うような気がするのです。

ふと思ったのですが、charge とは会社がこれら二名に付与していたクレジットカードのこと、amount は課金額のことだと考えると、少なくとも文章のツジツマが合いませんか? 会社が決めていたリミットを越えて直接業務とは関連性がない課金が何回もあり、社内調査の結果、明らかに違法・不正と見なされるものだったとしたら、引責で辞任に追い込まれることもあるでしょう。二人となると共犯なのでしょうか、要するに「使い込み・横領による解雇」ということです。

文章だけを元にした全く想像ですので、ご参考までに。是非ご質問者に究明して頂きたいです。

Qrequest.Servervariables("SERVER_NAME")の戻り値に余分なピリオドが付加される条件

ASPでサーバー環境変数を取得した際、サーバーアドレスに
「.」が付加された値が返されるクライアントがあります。

【request.Servervariables("SERVER_NAME")の戻り値】
通常ユーザー ⇒ "123.123.123.123"
あるユーザー ⇒ "123.123.123.123."

このピリオドが付加されるクライアントの条件が知りたいのですが...
ご存知の方はいらしゃいませんか?

Aベストアンサー

条件無いと思います。
多分ですが、ハイパーリンク書く時か、アドレスバー手入力時に、誤って余分に入力してしまったのではないでしょうか?

ちなみに IIS と IE で確認してみました。

http://LocalHost/var.asp
http://127.0.0.1/var.asp
http://127.0.0.1./var.asp

#var.asp は For Each ~で環境変数を出力するASP

3つとも同じASPが表示されました。
#もしかして末尾にピリオド1個多くてもIPアドレスとして認識されるバグ(?)

Q次の文のin charge ofは誤文?

「娘たちは侍女たちに預けて逃がしてくだされ。」

の英訳を見ると、

「Let my daughters escape in charge of attendants.」

とありました。

しかし、辞書を確認すると、

http://irleigo.blog105.fc2.com/blog-entry-314.html

で書かれてあるように、

『「of 以下の人に任せる」と言う意味で使う場合は

charge の前に the を置く』

とありました。

最初に示した英訳文は誤文でしょうか?

Aベストアンサー

ジーニアス英和辞典にもおっしゃるような記述がありますが,
研究社の英和大辞典では
in (the) charge of ~「~に預けられて,保護されて」
a patient in (the) charge of a nurse「看護師に委ねられている患者」
とあります。

ランダムハウス英和大辞典にも
アメリカ英語として
in charge of 人で「人の支配・管理・責任下に,世話になって」
とあります。

of 自体,主格関係・目的格関係いずれもありますので,
どちらにもとれる余地はあると思います。
the の有無でいくらでもこじつけはできると思いますが,
in search of ~とか,慣用的に the はとれるものです。

let, escape などの語で,監督者,被監督者が明確というのもあるでしょう。

また,he のような代名詞で「彼の監督下で」なら in the charge of him とするより,
in his charge とする方が普通です。

Q『列名 '担当者CD' があいまいです。』

VS2005のASP.NETで開発しております。
ここで、SelectCommandにて、2つ目のテーブルより名称を参照しようとJOIN関数をしようしましたら『列名 '担当者CD' があいまいです。』とのエラーメッセージです。 これはどこが悪いのでしょうか?
いろいろ修正してみたのですが解りません。
解る方がおりましたらアドバイスを頂けないでしょうか?
よろしくお願いいたします。

Aベストアンサー

複数のテーブルから、同じ名前の列をとりだす場合、どちらのテーブルの値なのか特定できないため、このエラーがでます。
なので、担当者CDの前にテーブル名をつけましょう。

例えば以下のようなテーブルがふたつあるとして…
テーブル1
担当者CD
担当者名

テーブル2
ID
担当者CD

SELECT テーブル2.担当者CD
FROM テーブル2
INNER JOIN テーブル1
ON テーブル1.担当者CD=テーブル2.担当者CD
WHERE テーブル2.担当者CD='99999'
ORDER BY テーブル2.担当者CD

のように書きます。(列が多い場合は、テーブルに別名をつけてあげると、多少、楽できるかも)

QIn practical life this mode of thin

In practical life this mode of thinking will have the same effect upon the personal mind as that which is secured in a wire that is not charged when it touches a wire that is charged.


以下の文章があります。(古い精神哲学書の一節です。)この文章が意図することをご教示いただけないでしょうか?

In practical life this mode of thinking will have the same effect upon the personal mind as that which is secured in a wire that is not charged when it touches a wire that is charged.


ご参考までに前の文の後には、以下の文章が続きます。
Thegreat within is a live wire; when the mind touches the great within, it becomes charged more and more with those same immense powers;~

In practical life this mode of thinking will have the same effect upon the personal mind as that which is secured in a wire that is not charged when it touches a wire that is charged.


以下の文章があります。(古い精神哲学書の一節です。)この文章が意図することをご教示いただけないでしょうか?

In practical life this mode of thinking will have the same effect upon the personal mind as that which is secured in a wire that is not charged when it touches a wire that is charged....続きを読む

Aベストアンサー

電気関係のことが分からないのでちょっとずれた回答になる可能性大ですが、一応こんな感じではないかと思いました。
「実際の生活においてこの思考モードは、ちょうど帯電していないワイヤーが帯電しているワイヤーに触れたとき内部に獲得されるのと同じような効果を、個人の心に与える」

QRequest.Querystringについて

ASPについて教えてください。
基本的な質問です。プログラム初心者です。

プログラムを前の方へ辿っていっても、
以下のスクリプトでRequest.QueryStringする"YM"や"MOVE"が定義されているところが見当たりません。
環境変数?にもそのようなものは、無さそうなのですが。

この"YM"や"MOVE"はどのようなものと考えれば良いでしょうか?
スクリプトなので上から順番に処理されていくと理解していたのですが、
そもそも間違いでしょうか?

<%
sYM = Request.QueryString("YM")
If sYM = "" Then
iYear = Year(Now())
iMonth = Month(Now())
Else
iYear = Left(sYM,4)
iMonth = Right(sYM,2)
End If
sMove = Request.QueryString("MOVE")
If sMove <> "" Then
If sMove = "Next" Then
ix = 1
Else
ix = -1
End If
iTmp = DateSerial(iYear, iMonth + ix, 1)
iYear = Year(iTmp)
iMonth = Month(iTmp)
End If

iLastDay = Day(DateSerial(iYear, iMonth + 1, 1 - 1))
iDay = 1 - Weekday(DateSerial(iYear, iMonth, 1)) + 1
Response.Write ""
Response.Write ""
Response.Write ""
sPrg = "calendar.asp?YM=" & iYear & Right("00" & iMonth, 2)
Response.Write ""
Response.Write ""
Response.Write ""

For x = 0 To 6
If x = 0 Then
sCol = "#EECCCC"
Else
sCol = "#EEEEEE"
End If
Response.Write ""
Next
For y = 0 To 5
Response.Write""
For x = 0 To 6
If x = 0 Then
sCol = "#FFCCCC"
Else
sCol = "WHITE"
End If
If Date() = DateSerial(iYear, iMonth, iDay) Then
sCol = "#FFE6CC"
fToday = True
Else
fToday = False
End If
If iDay > 0 Then
Response.Write ""
Else
Response.Write ""
End If
iDay = iDay + 1
If iDay > iLastDay Then
Exit For
End If
Next
Response.Write ""
If iDay > iLastDay Then
Exit For
End If
Next
Response.Write "

ASPについて教えてください。
基本的な質問です。プログラム初心者です。

プログラムを前の方へ辿っていっても、
以下のスクリプトでRequest.QueryStringする"YM"や"MOVE"が定義されているところが見当たりません。
環境変数?にもそのようなものは、無さそうなのですが。

この"YM"や"MOVE"はどのようなものと考えれば良いでしょうか?
スクリプトなので上から順番に処理されていくと理解していたのですが、
そもそも間違いでしょうか?

<%
sYM = Request.QueryString("YM")
If sYM = "" Then
iYear = Year(Now...続きを読む

Aベストアンサー

こん竹輪。(もぐもぐ。
いや。でも、やっぱおでんは白滝。。。(知らん。


>>Request.QueryString

んー。まず、コレを誤解?してる?

http://www.site-cooler.com/kwl/asp/10.htm#QueryString

QueryString
っちゅーと、「URLの後ろにくっついたパラメータを取得するためのもの」
ぐらいの認識でいいと思います。

なので。。。


>>"YM"や"MOVE"が定義されているところ

YMやMOVEはあらかじめ定義しておく変数。
ってわけではない。
って事になります。。。かね。
(あえて言うなら、前のページで定義して送られてくる?かな?


なので。。。
このソースのASPページにアクセスされた時点で

ttp://www...hogehogehoge.asp?YM=201209&MOVE=Next

のようなURLでアクセスされてきている。ことになるかと思います。


で、アクセスされてきたら。。。

sYM = Request.QueryString("YM")

で、URLパラメータの中から「YM」を取得し、「sYM」に「201209」を格納。

sMove = Request.QueryString("MOVE")

で、URLパラメータの中から「MOVE」を取得し、「sMove」に「Next」を格納。


となる事になります。

特に例外処理のようなものもないので。。。
YMとMOVEが必ず渡ってくるようにするつもりで作り込まれているようではありますね。


なので。。。

>>プログラムを前の方へ辿っていっても、

コレの疑問を解決するのならば、このASPページの前画面のページのソースを追う必要がある。
ですかね。

こん竹輪。(もぐもぐ。
いや。でも、やっぱおでんは白滝。。。(知らん。


>>Request.QueryString

んー。まず、コレを誤解?してる?

http://www.site-cooler.com/kwl/asp/10.htm#QueryString

QueryString
っちゅーと、「URLの後ろにくっついたパラメータを取得するためのもの」
ぐらいの認識でいいと思います。

なので。。。


>>"YM"や"MOVE"が定義されているところ

YMやMOVEはあらかじめ定義しておく変数。
ってわけではない。
って事になります。。。かね。
(あえて言うなら、前のページで定義して送...続きを読む

Qpreferral of charges の訳は?

裁判規定の誓約関する文章に出てくる
preferral of charges の訳を教えてください。

Aベストアンサー

私は法律は専門外です。検索すると出て来ます。
http://www.tpub.com/content/administration/14135/css/14135_201.htm
http://www.justia.com/dictionary/preferral-of-charges.html
に詳しい解説があります。原告側が被告の罪の重さを指定提案する法手続きです。

Q[ASP]Request名そのものを!

こんにちわ。

test.asp?komoku1=aaa&komoku2=bbb

となっている場合、test.aspでは
moji1 = Request("komoku1")
moji2 = Request("komoku2")
として利用できます。

そうではなく、komoku1 や komoku2 という自体を取り込むにはどうしたらいいですか?

Request(1).Name などいろいろやってみましたがまったくだめでした。
どうすれば、例でいう「komoku1」や [komoku2]を取得したらいいでしょうか?

Aベストアンサー

<%
For Each name In Request.QueryString
Response.write name & "<BR>"
Next
%>

で、項目のみ出力されます。
あとは、うまく料理してみてください。


人気Q&Aランキング