[前][次][番号順一覧][スレッド一覧]

mysql:13501

From: "kondo kondo" <"kondo kondo" <umiushi_00@xxxxxxxxxx>>
Date: Tue, 14 Nov 2006 14:05:55 +0000
Subject: [mysql 13501] Re: MYSQL+VB6.0*ADODCについて

SELECTの対象になったレコードを削除したいんですよね?
SQLだけでやってみたらどうでしょうか?

DELETE 
FROM 
      A_DB
WHERE 
      PLANT IN (SELECT PLANT FROM A_DB WHERE PLANT = 'A');

こんな感じ?(ひさびさなのでちょっと自信が・・・^^;)


>From: mew101 <mew101@xxxxxxxxxx>
>Reply-To: ml@xxxxxxxxxx
>To: ml@xxxxxxxxxx
>Subject: [mysql 13500] Re: MYSQL+VB6.0*ADODCについて
>Date: Tue, 14 Nov 2006 17:35:36 +0900
>
>
> > 永坂です。
> > 最近触ってないので古いソース引っ張ってきましたが
> >     My_Db.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};Server=[
サーバIP];PORT=[使用ポート];DATABASE=[データベース];UID=[ユーザ
ID];PASSWORD=[ユーザパスワード];OPTION=3"
> >     My_Db.Open
> > という形でDB接続しています。
> > ODBCドライバ部分はODBCデータソースアドミニストレータなどで確認してくださ
い。
> > Openしなくても接続できるんでしょうか?
> >
>
>永坂さん 近藤さん
>どうもありがとうございます
>コントロールパネルで設定したODBCを使わず
>上記のとおり、やってみたらメッセージが出ませんでした
>ありがとうございました
>思うにOPENしなくともデータを持ってくるようです
>しかし
>  Adodc1.RecordSource = "SELECT PLANT FROM A_DB WHERE PLANT = 'A'"
>  If Adodc1.Recordset.EOF Then
>
>この構文ではどうもうまくなく、
>SELECT文に関係なく先頭が削除されてしまうようです
>まずはエラーが出なくなったので
>ありがとうございました
>
>
>
>
> > > 鈴木@宮城といいます
> > >
> > > かなり古い技術かもしれませんが
> > > VB6.0+ADODC+ODBC接続でのプログラムを作成しています
> > >
> > > MYSQLのデータベースを1度アクセス2000でリンク(ODBC接続)させ
> > >  データの更新をします
> > >  (ここでは'A'というデータを削除する)
> > >
> > > Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data 
Source="
> > > &      App.Path & "\AC2000.mdb;" & "Mode=Share Deny None;Persist 
Security
> > > Info=False"
> > >
> > > Adodc1.RecordSource = "SELECT PLANT FROM A_DB WHERE PLANT = 'A'"
> > > If Adodc1.Recordset.EOF Then
> > >        MsgBox ("データが無い")
> > > Else
> > >     If Text1.Text <> "" Then
> > >         Adodc1.Recordset.Delete
> > >         Adodc1.Recordset.Update
> > >         Adodc1.Refresh
> > >     End If
> > > End If
> > >
> > > これはうまく削除できますが
> > >  アクセス2000をかまさないでできないかと思い
> > >
> > >  Adodc1.ConnectionString = "ODBC_DB"
> > >  (MYSQL とODBC接続)
> > >  Adodc1.RecordSource = "SELECT PLANT FROM A_DB WHERE PLANT = 'A'
> > > If Adodc1.Recordset.EOF Then
> > >        MsgBox ("データが無い")
> > > Else
> > >     If Text1.Text <> "" Then
> > >         Adodc1.Recordset.Delete
> > >         Adodc1.Recordset.Update
> > >         Adodc1.Refresh
> > >     End If
> > > End If
> > >
> > > とすると
> > > DELETEのところで
> > >
> > > 実行時エラー(−2147467259)(80004005)
> > > 更新に必要なベーステーブル情報が足りません
> > >
> > > とでます
> > > データは持ってくるようなのですが
> > > 更新しようとするとエラーとなります
> > > 何が足りないのでしょうか?
> > >
> > > ADODCを使う理由はDATAGRIDとの連携がいいからなんですが
> > > MYSQLには使えないのでしょうか?
> > > MYSQLの問題と思い投稿させていただきました
> > > よろしくお願いします
> > >
> > >
> > >
> > >
>
>

_________________________________________________________________
Hotmail に直接アクセス!MSN がさらに使いやすく http://jp.msn.com/ 


[前][次][番号順一覧][スレッド一覧]

     13485 2006-11-13 18:38 [mew101 <mew101@xxxxx] MYSQL+VB6.0*ADODCについて               
     13493 2006-11-14 11:17 ┣["kondo kondo" <umius]                                       
     13494 2006-11-14 11:28 ┗[Hiroshi Nagasaka <h-]                                       
     13500 2006-11-14 17:35  ┗[mew101 <mew101@xxxxx]                                     
->   13501 2006-11-14 23:05   ┗["kondo kondo" <umius]                                   
     13502 2006-11-15 10:41    ┗[mew101 <mew101@xxxxx]