☆彡群馬県高崎市のITシステムアドバイザーの日常(goo支店)

群馬県高崎市のデータ活用コンサルタント・ITシステムアドバイザー「なみぶたぁのだんな」です。是非ご覧下さい(*^ー゜)

ADO + ORACLE SEQUENCE で値が2ずつ増える

2008年03月21日 12時56分29秒 | Oracle / SQL Server / MySQL / Postgres /

VBAからオラクルのSEQUENCEに対し、 .NEXTVALを発行するとなぜか2づつ値が増えていく事象が発生。
SQL*Plusから実行すると1ずつしか増えない。


CREATE文は下記の通り。


CREATE SEQUENCE SEQ_TEST
  INCREMENT BY 1
  MINVALUE 1
  MAXVALUE 99999999
  START WITH 1
  NOCACHE
  CYCLE
  ORDER;


「INCREMENT BY 1」で増分値を1にしているし、「NOCACHE」も指定しているので飛ぶこともないし・・・。


おかしいなと思っていたらこちらのサイトでヒントを見つけました。→「電撃羊の‘あしあと’


oo4oで接続したとき、やはり2個飛びになるとのこと。これをヒントに下記の通りのパラメータとして正常に動作する様になりました。


    Dim rst As
ADODB.Recordset
    Dim strSQL As String

    Set rst = New ADODB.Recordset
    strSQL = "SELECT SEQ_TEST.NEXTVAL FROM
DUAL"
    rst.Open strSQL, GetRDBConnection(),
adOpenStatic, adLockReadOnly

修正前はそれぞれ「adOpenDynamic」「adLockOptimistic」を使用していました。
SEQUENCEを使用するときは、パラメータを変えないとだめそうですね。


↓クリックして頂けるとうれしいです(ワンクリック詐欺ではないです(笑))

banner_03人気blogランキングへ
にほんブログ村 地域生活ブログ 群馬情報へ にほんブログ村 サッカーブログ 少年サッカーへ にほんブログ村 IT技術ブログへ 日本ブログ村へ




Oracle10g を Windows Vista で動作させる

2008年03月12日 00時00分00秒 | Oracle / SQL Server / MySQL / Postgres /

システムの開発では、実際のプログラムができるまでは紙の資料で画面や帳票の説明をすることが多いのですが、
ユーザ様からすると実際の画面を見ないと動きがわからないということがよくあります。


今回も、Oracle10gで作っているシステムを、急遽お客様先にお見せすることになったのですが、デモPCのOSは
「Windows Vista Business」。クライアントソフトは10.2.0.3からVista対応したようですが、
サーバ側は未対応。(11gでは対応されるのでしょうか・・。)


だめもとで無理矢理インストールしてみました。


1.Oracle10g(10.2.0.1) Standard Editionをインストール。


2.10.2.0.3パッチを適用。
サポート契約していないと入手できません。


3.Windowsファイアーフォールを「無効」に設定。・・・これは必要かどうかは疑問


プログラムを動かしてみると・・・、動いた!


とりあえずデモはこれでいきましょう。お客様の前で動かなかったらどうしよう(泣)


開発及び本番はWindows2003サーバ上で動作させるので問題ないのですが、
オラクルを使っているとデモの時はサーバーを持って行くわけではないので困りますよね。みんなどうしているのでしょう。
SQLServerだったらExpress Editionがあるので良いのですが。


※注意


オラクルも保証していませんし、真似して障害・
損害が発生しても私は責任を負いかねます。自己責任でお願いします。


↓クリックして頂けるとうれしいです(ワンクリック詐欺ではないです(笑))

banner_03人気blogランキングへ
にほんブログ村 地域生活ブログ 群馬情報へ にほんブログ村 サッカーブログ 少年サッカーへ にほんブログ村 IT技術ブログへ 日本ブログ村へ




AccessでSQLServerへのリンクテーブルを作成する

2007年11月22日 12時47分11秒 | Oracle / SQL Server / MySQL / Postgres /

Accessで他DBへのリンクテーブルを作成する際、手動で作るには何の問題もないですが、
PGでリンクテーブルを作成する場合があります。


先日プログラム開発をしていたら、SQLServerへのリンクテーブルを作成する際、SQLServer認証だと接続の都度、
ユーザID、パスワードを入力するダイアログが表示されてしまうことが判明。


実行したソース
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓


Set defMyTblDef = dbMyDB.CreateTableDef("リンク名"))
defMyTblDef.Connect = "ODBC;DSN=" + p_strDatabase


If p_intCertify = C_CERTIFY_WINDOWS Then
    ' Windows認証
    defMyTblDef.Connect = defMyTblDef.Connect +
";Trusted_Connection=Yes"
Else
    ' SQLServer認証
    defMyTblDef.Connect = defMyTblDef.Connect +
_
                         
";Trusted_Connection=No" + _
                         
";UID=" + p_strUserName + _
                         
";PWD=" + p_strPassword
End If
' リンクパスワードを保存する
defMyTblDef.Attributes = dbAttachSavePWD

defMyTblDef.SourceTableName = "テーブル名"
dbMyDB.TableDefs.Append defMyTblDef


'TableDefコレクションを更新
defMyTblDef.RefreshLink


↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑


赤字の部分を入れてやるとパスワード入力の画面が表示されません。これは手動でリンクテーブルを設定するときに「パスワードの保存」
をチェックしたのと同じ状態になります。


解決して良かった!


参考ページ→SOHOプログラマのぼやき


↓クリックして頂けるとうれしいです(ワンクリック詐欺ではないです(笑))

banner_03人気blogランキングへ
にほんブログ村 地域生活ブログ 群馬情報へ にほんブログ村 サッカーブログ 少年サッカーへ にほんブログ村 IT技術ブログへ 日本ブログ村へ




【Oracle】パケットライター障害

2007年11月09日 09時31分47秒 | Oracle / SQL Server / MySQL / Postgres /

最近技術ネタがすっかり少なくなったと反省しきりのだんなです。
人( ̄ω ̄;) スマヌ


ということでたまには技術ネタを。


先日、
客先に行っている同僚からOracle10gクライアントをインストールしたPCでSQLPlusを使ってDBに接続しようとしたところ
ORA-12571:TNS:パケットライターに障害が発生しました
というメッセージが表示されたと電話がありました。


状況としては、


1.
Oracle8.0.?クライアントがインストールされているPCにOracle10.2.0クライアントをインストール


2.ウィルスセキュリティZEROがインストールされている。


3.WindowsXP


です。


ネットで調べたところ、どうも2が怪しい。同じような事例が発生している模様。
早速サービスを止めてもらったがそれでも改善しませんでした。


次に疑ったのは1。8.0.?クライアントが悪さしているのでは?と、
いうことで10.2.0クライアントをアンインストールして8.0.?のSQLPlusで接続を試みましたがやはり
パケットライター障害!


そこで8.0.?を消して、10.2.0を入れようということになったのですが、アンインストールの方法がわからない。
エクスプローラーでフォルダ毎削除しようとしてもファイルが使用中とのことで削除不可。


しようがないのでWindowsをセーフモードで立ち上げていただき、フォルダ毎削除。
その後10.2.0を再インストールしてもらい無事接続できるようになりました。
ヘ( ̄▽ ̄*)ノ・ ・.♪ヒャッホーイ♪.・ ・ヾ(* ̄▽ ̄)ノ


そもそもXP+Oracle8クライアントというのはNGだと思いますけどね。


この方法、アングラすぎます。
真似して損害があっても当方は責任を負いませんので、同じことをやられる場合には自己責任でお願いします。


↓クリックして頂けるとうれしいです(ワンクリック詐欺ではないです(笑))

banner_03人気blogランキングへ
にほんブログ村 地域生活ブログ 群馬情報へ にほんブログ村 サッカーブログ 少年サッカーへ にほんブログ村 IT技術ブログへ 日本ブログ村へ




【データベース】銀行マスタを作成する際に便利なサイト

2007年10月24日 15時00分40秒 | Oracle / SQL Server / MySQL / Postgres /

システム開発をする際に銀行情報をマスタ化する事はよくありますが、データをどうするか問題になります。全銀協から有償でデータを買えるのかも知れませんが、ネットでもファイルをダウンロードできるサイトがあります。


角ちゃんのページ銀行コード検索


Dratheraの勝手気まま全国統一金融機関コード


データを保証しているサイトではないので、使用はあくまでも自己責任で御願いします。


↓クリックして頂けるとうれしいです(ワンクリック詐欺ではないです(笑))

banner_03人気blogランキングへ

にほんブログ村 地域生活ブログ 群馬情報へ にほんブログ村 サッカーブログ 少年サッカーへ にほんブログ村 IT技術ブログへ 日本ブログ村へ