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

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

オラクルDBの不具合

2007年10月01日 15時48分42秒 | Oracle / SQL Server / MySQL / Postgres /

神戸新聞のシステム障害はオラクルDBの問題、修正プログラム配布へ


神戸新聞でシステム障害で新聞の編集が出来ず京都新聞にバックアップを依頼したというニュースが先日ありましたが、これはオラクルデータベースの不具合だったようです。


統計情報の採取処理(analyseコマンド?)を実行した後、shutdown abortを実行するとDBが起動しなくなる事があるようです。


実際の運用でshutdown abort(DBの強制終了)をする事があるんですね。せめてshutdown immediateですよね。恐い運用です。


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

banner_03人気blogランキングへ

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




ODBC設定の自動化

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

odbcconfコマンドを使用すると、バッチファイル等から設定できるようです。


参考サイト:patagonの日記


VB/Cから実行するにはSQLConfigDataSource()APIを使用します。


・VBサンプル(Windows認証の場合)


Private Const ODBC_ADD_DSN = 1           ' Add a new data source.

Private Const ODBC_CONFIG_DSN = 2        ' Configure (edit) existing data source.

Private Const ODBC_REMOVE_DSN = 3        ' Remove existing data source.

Private Const ODBC_ADD_SYS_DSN = 4       ' Add data source

Private Const ODBC_CONFIG_SYS_DSN = 5    ' Configure (edit) data source

Private Const ODBC_REMOVE_SYS_DSN = 6    ' Remove data source


Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" (ByVal _

   hwndParent As Long, ByVal fRequest As Long, ByVal _

   lpszDriver As String, ByVal lpszAttributes As String) As Long


Public Function CreateDSN(p_strServerName As String) As Long


    Dim ret As Long

    Dim Driver As String

    Dim Attributes As String

   

    Driver = "SQL Server" & Chr(0)

    Attributes = "DSN=" & g_strDatabaseName & Chr(0)

    Attributes = Attributes & "Database=" & g_strDatabaseName & Chr(0)

    Attributes = Attributes & "Server=" & g_strServerName & Chr(0)

    Attributes = Attributes & "Trusted_Connection=Yes" & Chr(0)

   

    ' 削除

    ret = SQLConfigDataSource(0, ODBC_REMOVE_DSN, Driver, Attributes)

    ' 追加

    ret = SQLConfigDataSource(0, ODBC_ADD_DSN, Driver, Attributes)

  

    CreateDSN = ret


End Function


サンプルはSQLServer用ですが、他のDBでも同じように実行できると思います。パラメータは違うでしょうが・・・。


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

banner_03人気blogランキングへ

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




IDENTITY項目に明示的に値を設定する方法

2007年08月16日 14時40分46秒 | Oracle / SQL Server / MySQL / Postgres /

SQL Serverで項目に自動採番するようIDENTITYを設定している場合、通常のINSERT文を実行するとエラーになってしまいます。


下記の手順が必要。


・INSERT句で項目名を全て列挙する。


・SET IDENTITY_INSERTを使用する。


(Ex) Fld1がIDENTITY項目の場合。

SET IDENTITY_INSERT テーブル名 ON

INSERT INTO テーブル名 (Fld1, Fld2, Fld3) VALUE (1, "あいう", 123);

SET IDENTITY_INSERT テーブル名 OFF


Access2003 VBA + ADOで動作確認済。


参考サイト:


Landscape - エンジニアのメモ


MSDN-SET IDENTITY_INSERT


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

banner_03人気blogランキングへ

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




SEQUENCEのインポート

2007年07月12日 09時15分23秒 | Oracle / SQL Server / MySQL / Postgres /

impコマンドでFULL又はユーザ指定でインポートする場合、対象のスキーマに同名のSEQUENCEオブジェクトが存在すると、順序は上書きされません。


もし、ダンプファイル内のデータで置き換えたいのだったらインポート前に予めSEQUENCEを削除しておく必要があります。


これを知らずに、昨日ポカをやってしまいました。(泣)


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

banner_03人気blogランキングへ