忍者ブログ
忘れっぽい開発者の備忘録。基本的に自分用メモです。
[1] [2] [3] [4] [5] [6
2017.12.18,Mon
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

2011.02.01,Tue
  ■概要
データベースリンクを削除する。

 ■構文
DROP DATABASE LINK DBリンク名
;

PR
2011.02.01,Tue
 ■概要
データベースリンクを作成する。
(別のDBサーバへアクセスできるようにする)

 ■構文
CREATE DATABASE LINK DBリンク名
CONNECT TO 接続ID
IDENTIFIED BY 接続パスワード
USING '接続子'
;


■使用例
※使用データベース
サービス名:all_db
スキーマ名:system_db
ID:system
PASS:db

スキーマ名:product_db

※目的
all_dbの中のsystem_dbのデータベースリンクを作成する。

※SQL
CREATE DATABASE LINK s_dblink
CONNECT TO system
IDENTIFIED BY db
USING 'all_db'
;






上記を実行後、product_dbから「SELECT * FROM table1@s_dblink」など実行する事が出来ます。
 
2011.02.01,Tue
 Accessでは、パススルークエリで指定できるSQLは
oracleのSQL/Plus等から指定できるようなものに限られている。
そのため、Accessの関数やオブジェクトなどをSQL中で直接参照させる事ができない。
 
 
■解決策1
文字列展開でSQLを作成する。
(プログラムの中にSQLを展開させ、実行するたびにクエリを作成させるようにする)
 
■解決策2
パススルークエリを使わず、ODBC リンクテーブル経由で操作するようにする。
Oracle自体のSQL構文を使用する事が出来ない事が欠点になるが、
Forms![main]![keyword]のようなAccess特有の構文を使用する事は出来る。
2011.02.01,Tue
 ■概要
Oracleのデータベースの文字コードを確認する。
 
■構文
SELECT VALUE FROM NLS_DATABASE_PARAMETERS
WHERE  PARAMETER='NLS_CHARACTERSET'
;

これをそのまま実行すれば文字コードが取得出来ます。
utf-8の場合は「AL32UTF8」という出力結果になります。
 
2011.02.01,Tue
■概要
テーブルの列を削除する。
 
■構文
ALTER TABLE テーブル名
DROP COLUMN 列名
;

■使用例
※使用テーブル
product_mst
id product price insert_date flg memo
1 書籍 1000 ( NULL ) 0 ( NULL )
2 CD 3000  ( NULL ) 0 ( NULL )
 
※目的
product_mstからmemoを削除する。

※SQL
ALTER TABLE product_mst
DROP COLUMN memo





※結果
product_mst
id product price insert_date flg
1 書籍 1000 ( NULL ) 0
2 CD 3000  ( NULL ) 0
   
カレンダー
11 2017/12 01
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
ブログ内検索
Template by mavericyard*
Powered by "Samurai Factory"
忍者ブログ [PR]