販売管理B.mdb -> SQLServer


  hanbaiB_ss.vbs




  

' ************************************************
' 基本設定
' ************************************************
strMdbPath = "c:\temp\販売管理B.mdb"

' SQLServer のインスタンス文字列
strCon = "MACHINE\MSDE2000"
' データベース
strDb = "mydb"
' スキーマ(ユーザ)
strSc = "sa"
' パスワード
strPwd = "password"

' ************************************************
' 処理用文字列設定
' ************************************************
' MDB の接続文字列
strConnectMdb = _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & strMdbPath & ";"

' Microsoft の Oracle 用 ODBC ドライバの接続文字列 (1)
strConnectOracle = _
" in '' [ODBC;Driver={SQL Server};SERVER=" & _
strCon & ";Database=" & strDb & ";UID=" & strSc & ";PWD=" & strPwd & "]"

' Microsoft の Oracle 用 ODBC ドライバの接続文字列 (2)
strConnectOracle2 = _
"Provider=MSDASQL;Driver={SQL Server};SERVER=" & _
strCon & ";Database=" & strDb & ";UID=" & strSc & ";PWD=" & strPwd

' ************************************************
' 初期処理
' ************************************************
Set Cn = CreateObject("ADODB.Connection")
Set Cn2 = CreateObject("ADODB.Connection")
Cn.Open strConnectMdb
Cn2.Open strConnectOracle2

' ************************************************
' コード名称マスタ
' ************************************************
Query = _
"create table コード名称マスタ (" & _
"	区分 INT" & _
"	,コード VARCHAR(10)" & _
"	,名称 NVARCHAR(50)" & _
"	,数値1 INT" & _
"	,数値2 INT" & _
"	,作成日 DATETIME" & _
"	,更新日 DATETIME" & _
"	,primary key(区分,コード)" & _
")"
Call SSTransfer( "コード名称マスタ", Query )

' ************************************************
' コントロールマスタ
' ************************************************
Query = _
"create table コントロールマスタ (" & _
"	キー VARCHAR(1)" & _
"	,売上日付 DATETIME" & _
"	,売上伝票 INT" & _
"	,primary key(キー)" & _
")"
Call SSTransfer( "コントロールマスタ", Query )

' ************************************************
' メッセージマスタ
' ************************************************
Query = _
"create table メッセージマスタ (" & _
"	コード VARCHAR(4)" & _
"	,メッセージ NVARCHAR(100)" & _
"	,primary key(コード)" & _
")"
Call SSTransfer( "メッセージマスタ", Query )

' ************************************************
' 取引データ
' ************************************************
Query = _
"create table 取引データ (" & _
"	取引区分 VARCHAR(2)" & _
"	,伝票番号 INT" & _
"	,行 INT" & _
"	,取引日付 DATETIME" & _
"	,取引先コード VARCHAR(4)" & _
"	,商品コード VARCHAR(4)" & _
"	,数量 INT" & _
"	,単価 INT" & _
"	,金額 INT" & _
"	,primary key(取引区分,伝票番号,行)" & _
")"
Call SSTransfer( "取引データ", Query )

' ************************************************
' 商品マスタ
' ************************************************
Query = _
"create table 商品マスタ (" & _
"	商品コード VARCHAR(4)" & _
"	,商品名 NVARCHAR(50)" & _
"	,在庫評価単価 INT" & _
"	,販売単価 INT" & _
"	,商品分類 VARCHAR(3)" & _
"	,商品区分 VARCHAR(1)" & _
"	,作成日 DATETIME" & _
"	,更新日 DATETIME" & _
"	,primary key(商品コード)" & _
")"
Call SSTransfer( "商品マスタ", Query )

' ************************************************
' 商品分類マスタ
' ************************************************
Query = _
"create table 商品分類マスタ (" & _
"	商品分類 VARCHAR(3)" & _
"	,名称 NVARCHAR(50)" & _
"	,作成日 DATETIME" & _
"	,更新日 DATETIME" & _
"	,primary key(商品分類)" & _
")"
Call SSTransfer( "商品分類マスタ", Query )

' ************************************************
' 得意先マスタ
' ************************************************
Query = _
"create table 得意先マスタ (" & _
"	得意先コード VARCHAR(4)" & _
"	,得意先名 NVARCHAR(50)" & _
"	,得意先区分 VARCHAR(1)" & _
"	,担当者 VARCHAR(4)" & _
"	,郵便番号 VARCHAR(7)" & _
"	,住所1 NVARCHAR(100)" & _
"	,住所2 NVARCHAR(100)" & _
"	,作成日 DATETIME" & _
"	,更新日 DATETIME" & _
"	,primary key(得意先コード)" & _
")"
Call SSTransfer( "得意先マスタ", Query )

' ************************************************
' 社員マスタ
' ************************************************
Query = _
"create table 社員マスタ (" & _
"	社員コード VARCHAR(4)" & _
"	,氏名 NVARCHAR(50)" & _
"	,フリガナ NVARCHAR(50)" & _
"	,所属 VARCHAR(4)" & _
"	,性別 BIT" & _
"	,作成日 DATETIME" & _
"	,更新日 DATETIME" & _
"	,給与 INT" & _
"	,手当 INT" & _
"	,管理者 VARCHAR(4)" & _
"	,primary key(社員コード)" & _
")"
Call SSTransfer( "社員マスタ", Query )

' ************************************************
' 郵便番号マスタ
' ************************************************
Query = _
"create table 郵便番号マスタ (" & _
"	郵便番号 VARCHAR(7)" & _
"	,都道府県名カナ NVARCHAR(255)" & _
"	,市区町村名カナ NVARCHAR(255)" & _
"	,町域名カナ NVARCHAR(255)" & _
"	,都道府県名 NVARCHAR(255)" & _
"	,市区町村名 NVARCHAR(255)" & _
"	,町域名 NVARCHAR(255)" & _
")"
Call SSTransfer( "郵便番号マスタ", Query )

' ************************************************
' ビュー
' ************************************************
RunSS( "drop view V_商品一覧" )
Query = _
"create view V_商品一覧 as" & _
"	SELECT 商品マスタ.商品コード" & _
"	, 商品マスタ.商品名" & _
"	, 商品マスタ.販売単価" & _
"	, 商品分類マスタ.商品分類" & _
"	, 商品分類マスタ.名称 AS 分類名" & _
"	, 商品マスタ.商品区分" & _
"	, コード名称マスタ.名称 AS 区分名" & _
" from" & _
"	(商品マスタ LEFT JOIN 商品分類マスタ" & _
"	ON 商品マスタ.商品分類 = 商品分類マスタ.商品分類" & _
"	) LEFT JOIN コード名称マスタ" & _
"	ON 商品マスタ.商品区分 = コード名称マスタ.コード" & _
" where" & _
"	コード名称マスタ.区分 = 3"
RunSS( Query )

RunSS( "drop view V_売上日付" )
Query = _
"create view V_売上日付 as" & _
"	SELECT コントロールマスタ.売上日付" & _
"	FROM コントロールマスタ" & _
"	WHERE コントロールマスタ.キー = '1'"
RunSS( Query )

RunSS( "drop view V_得意先台帳" )
Query = _
"create view V_得意先台帳 as" & _
"	SELECT 取引データ.取引先コード" & _
"	, 得意先マスタ.得意先名" & _
"	, 取引データ.取引日付" & _
"	, 取引データ.取引区分" & _
"	, 取引データ.伝票番号" & _
"	, 取引データ.行" & _
"	, 取引データ.商品コード" & _
"	, 商品マスタ.商品名" & _
"	, 取引データ.数量" & _
"	, 取引データ.単価" & _
"	, 取引データ.金額" & _
" from" & _
"	(取引データ INNER JOIN 商品マスタ" & _
"	ON 取引データ.商品コード=商品マスタ.商品コード" & _
"	) INNER JOIN 得意先マスタ" & _
"	ON 取引データ.取引先コード=得意先マスタ.得意先コード" & _
" where" & _
"	取引データ.取引区分 = '10'"
RunSS( Query )

RunSS( "drop view V_社員一覧" )
Query = _
"create view V_社員一覧 as" & _
" select 社員コード" & _
"	,氏名" & _
"	,フリガナ" & _
"	,名称1.名称 as 性別" & _
"	,所属" & _
"	,名称2.名称 as 所属名" & _
" from 社員マスタ" & _
"	,コード名称マスタ 名称1" & _
"	,コード名称マスタ 名称2" & _
" where 性別 = 名称1.コード" & _
"   and 名称1.区分 = 1" & _
"   and 所属 = 名称2.コード" & _
"   and 名称2.区分 = 2"
RunSS( Query )

' ************************************************
' 終了
' ************************************************
Query = "drop table 転送用テーブル"
RunSS( Query )

Cn2.Close
Cn.Close

' ************************************************
' Oracle 転送
' ************************************************
function SSTransfer( strTable, QueryCreate )

	Dim Query

	Query = "drop table " & strTable
	RunSS( Query )

	RunSS( QueryCreate )

	Query = "drop table 転送用テーブル"
	RunSS( Query )
	Query = "select * into 転送用テーブル" & strConnectOracle & _
	" from " & strTable
	RunMdb( Query )

	Query = "insert into " & strTable & _
	" select * from 転送用テーブル"
	RunSS( Query )

end function

' ************************************************
' MDB 実行
' ************************************************
function RunMdb( Query )

	on error resume next
	Cn.Execute Query
	if Err.Number <> 0then
		Wscript.Echo Err.Description
	end if
	on error goto 0

end function

' ************************************************
' Oracle 実行
' ************************************************
function RunSS( Query )

	on error resume next
	Cn2.Execute Query
	if Err.Number <> 0then
		Wscript.Echo Err.Description
	end if
	on error goto 0

end function
  










yahoo  google  MSDN  MSDN(us)  WinFAQ  Win Howto  tohoho  ie_DHTML  vector  wdic  辞書  天気 


[dbaccess]
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
24/04/20 20:41:36
InfoBoard Version 1.00 : Language=Perl

1 BatchHelper COMprog CommonSpec Cprog CprogBase CprogSAMPLE CprogSTD CprogSTD2 CprogWinsock Cygwin GameScript HTML HTMLcss InstallShield InstallShieldFunc JScript JScriptSAMPLE Jsfuncs LLINK OldProg OracleGold OracleSilver PRO PRObrowser PROc PROconePOINT PROcontrol PROftpclient PROjscript PROmailer PROperl PROperlCHAT PROphp PROphpLesson PROphpLesson2 PROphpLesson3 PROphpfunction PROphpfunctionArray PROphpfunctionMisc PROphpfunctionString PROsql PROvb PROvbFunction PROvbString PROvbdbmtn PROvbonepoint PROwebapp PROwin1POINT PROwinSYSTEM PROwinYOROZU PROwindows ProjectBoard RealPHP ScriptAPP ScriptMaster VBRealtime Vsfuncs a1root access accreq adsi ajax amazon argus asp aspSample aspVarious aspdotnet aw2kinst cappvariety centura ckeyword classStyle cmaterial cmbin cmdbapp cmenum cmlang cmlistbox cmstd cmstdseed cmtxt cs daz3d db dbCommon dbaccess dnettool dos download flex2 flex3 flex4 framemtn framereq freeWorld freesoft gimp ginpro giodownload google hdml home hta htmlDom ie9svg install java javaSwing javascript jetsql jquery jsp jspTest jspVarious lightbox listasp listmsapi listmsie listmsiis listmsnt listmspatch listmsscript listmsvb listmsvc memo ms msde mysql netbeans oraPlsql oracle oracleWiper oraclehelper orafunc other panoramio pear perl personal pgdojo pgdojo_cal pgdojo_holiday pgdojo_idx pgdojo_ref pgdojo_req php phpVarious phpguide plsql postgres ps r205 realC realwebapp regex rgaki ruby rule sboard sc scprint scquest sdb sdbquest seesaa setup sh_Imagick sh_canvas sh_dotnet sh_google sh_tool sh_web shadowbox shgm shjquery shvbs shweb sjscript skadai skywalker smalltech sperl sqlq src systemdoc tcpip tegaki three toolbox twitter typeface usb useXML vb vbdb vbsfunc vbsguide vbsrc vpc wcsignup webanymind webappgen webclass webparts webtool webwsh win8 winofsql wmi work wp youtube