出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

列が削除されないの。   enakoさん [2004/07/02 13:05:54] [4469]
  Re:列が削除されないの。   YasNet(管理人)さん [2004/07/02 16:34:58] [4471]
    Re:列が削除されないの。   enakoさん [2004/07/06 16:37:04] [4505]

[4469] 列が削除されないの。
投稿者:enakoさん 2004/07/02 13:05:54
こんにちは。
いつもお世話になっています。
SQLで列の削除をしようとしています。
VBのスクリプトで↓のような関数を使って削除を実行してみたのですが、削除してくれません(。。、
SQLをページに返してみるとSQLの生成は意図するものが表示されてはいるのですが・・・。

----------------------------------------------------------
'## D テーブルの列の追加(一意の識別子列をテーブルに追加) --- ","で区切られた列情報を削除

Function delColumn_TBL(strdatabase, strtable, strConnect, str)

item = split(str, ",")

for i = 0 to UBound(item)
sql = "USE " & strdatabase & " ALTER TABLE " & strtable & " DROP " & item(i)
call create_Sql(sql, strConnect)
response.Write sql
Next

End function

-----------------------------------------------------------

また、同様に列の追加関数も作成し、実行してみたのですが、追加は行うのですが、主キーの設定がうまくいきません。
下のコードでは何かだめなところがあるのでしょうか?
-----------------------------------------------------------
'## D テーブルの列の追加(一意の識別子列をテーブルに追加) --- ","で区切られた列情報を取得し解析
Function addColumn_TBL(strdatabase, strtable, strConnect, str)
'str = "NEWFIELD,DATATYPE,SIZE,PRYMARY,NULL,DEFAULT"
response.Write str

item = Split(str, ",")
newfield = item(0) '(0)
datatype = item(1) '(1)
size = item(2) '(2)
if item(3) = "on" then '(3)
primary = "checked"
end if
if item(4) = "on" then '(4)
allownull = "checked"
end if
def = item(5) '(5)

If strdatabase <> "" And strdatabase <> "master" then
If strtable <> "" then
sql = "USE " & strdatabase & " ALTER TABLE " & strtable & " ADD " & newfield

if datatype <> "" then sql = sql & " " & datatype
if size <> "" then sql = sql & " (" & size & ")"
if allownull <> "checked" then sql = sql & " NOT NULL"
if def <> "" then sql = sql & " DEFAULT " & def
call create_Sql(sql, strConnect)
End if
End If

'PRYMRY設定
if primary = "checked" then
sql = "USE " & strdatabase & " ALTER TABLE " & table & " ADD PRIMARY KEY(" & newfield & ")"
call create_Sql(sql, strConnect)
End if

End function
----------------------------------------------------------
超初心者レベルな質問で申し訳ありませんがよろしくお願いします。


[4471] Re:列が削除されないの。
投稿者:YasNet(管理人)さん 2004/07/02 16:34:58
こんにちは YasNet(管理人)です。

>SQLの生成は意図するものが
意図するSQLが完了しているなら
commitしてないだけではないでしょうか

>主キー
どんなエラーが出てうまくいかないのでしょうか

ひょっとして、エラーは出てないのでしょうか。

それでは 失礼いたします。

[4505] Re:列が削除されないの。
投稿者:enakoさん 2004/07/06 16:37:04
> >主キー
> どんなエラーが出てうまくいかないのでしょうか
>

レスがおそくなってすみません!!
エラーメッセージはなにもでないんです(。。、



TreeBBS For ASP V.0.1.3
Program By YasNet