Set MyADOXC = CreateObject("ADOX.Catalog")
MyADOXC.Create ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='jisho'")
Set MyADOXC = Nothing
Set MyDbCnn = CreateObject("ADODB.Connection")
MyDbCnn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='jisho'")
MyDbCnn.Execute ("CREATE TABLE tbl00(fld1 String, fld2 Memo)")
MyDbCnn.Execute ("CREATE INDEX MyIDX ON tbl00(fld1)")
MyDbCnn.Execute ("INSERT INTO tbl00 ( fld1, fld2 ) SELECT [sample#txt].fld1, [sample#txt].fld2 FROM sample#txt in '" & CreateObject("WScript.Shell").CurrentDirectory & "' 'Text;'")
MyDbCnn.Close
Set MyDbCnn = Nothing
| Set MyADOXC = CreateObject("ADOX.Catalog") | データベース作成係の小人を召喚するおまじない。 |
| MyADOXC.Create ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='jisho'") | "jisho"という名前でデータベースファイル作成(この時点ではまだ中身はからっぽ) |
| Set MyADOXC = Nothing | もう用はないから小人はどっか行っちゃえ、のおまじない。 |
| Set MyDbCnn = CreateObject("ADODB.Connection") | データベース接続係の小人を召喚するおまじない。 |
| MyDbCnn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='jisho'") | "jisho"に接続(データベースに接続してはじめていろんなことができる) |
| MyDbCnn.Execute ("CREATE TABLE tbl00(fld1 String, fld2 Memo)") | テーブルと呼ばれるデータの格納表作成。テーブル名は"tbl00"、列名は"fld1"と"fld2" |
| MyDbCnn.Execute ("CREATE INDEX MyIDX ON tbl00(fld1)") | fld1の列にインデックス作成(インデックスつけると検索が速くなるという噂) |
| MyDbCnn.Execute (" INSERT INTO tbl00 ( fld1, fld2 ) SELECT [sample#txt].fld1, [sample#txt].fld2 FROM sample#txt in '" & CreateObject("WScript.Shell").CurrentDirectory & "' 'Text;'") |
同じディレクトリ(フォルダ)中にあるsampleファイルからtbl00にデータ流し込み(fld1→fld1, fld2→fld2) |
| MyDbCnn.Close | 接続解除 |
| Set MyDbCnn = Nothing | もう用はないから小人はどっか行っちゃえ、のおまじない。 |
Option Explicit
Dim MyADOXC, MyDbCnn
Set MyADOXC = CreateObject("ADOX.Catalog")
MyADOXC.Create ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='jisho'")
Set MyADOXC = Nothing
Set MyDbCnn = CreateObject("ADODB.Connection")
MyDbCnn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='jisho'")
MyDbCnn.Execute ("CREATE TABLE tbl00(fld1 String, fld2 Memo)")
MyDbCnn.Execute ("CREATE INDEX MyIDX ON tbl00(fld1)")
MyDbCnn.Execute ("INSERT INTO tbl00 ( fld1, fld2 ) SELECT [sample#txt].fld1, [sample#txt].fld2 FROM sample#txt in '" & CreateObject("WScript.Shell").CurrentDirectory & "' 'Text;'")
MyDbCnn.Close
Set MyDbCnn = Nothing
Option Explicit
Dim MyWSHLL, MyFSO, MyADOXC, MyDbCnn
Dim MyStrCurrDir
Dim MyChkDB, MyChkSAMPLE
Set MyWSHLL = CreateObject("WScript.Shell") 'MyWSHLLと名づけた箱に、現在地取得係の小人を召喚
MyStrCurrDir = MyWSHLL.CurrentDirectory '箱の中の小人に教えてもらった現在地を、MyStrDirと名づけた箱に一時保管
Set MyWSHLL = Nothing '小人バイバイ
Set MyFSO = CreateObject("Scripting.FileSystemObject") 'MyFSOと名づけた箱に、ファイル有無判別係の小人を召喚
MyChkDB = MyFSO.FileExists(MyStrCurrDir & "\jisho") 'この場所にjishoというファイルがあるかどうか、有無の結果を、MyChkDBと名づけた箱に一時保管
MyChkSAMPLE = MyFSO.FileExists(MyStrCurrDir & "\sample.txt") 'この場所にsample.txtというファイルがあるかどうか、有無の結果を、MyChkSAMPLEと名づけた箱に一時保管
Set MyFSO = Nothing '小人バイバイ
If MyChkDB = True Then
MsgBox "もう1回実験したいなら、そっちを消してから", vbOKOnly, "jishoファイルはすでにある"
WScript.Quit 'プログラムはここで終了。この先は実行しない。
End If
If MyChkSAMPLE = False Then
MsgBox "sample.txtがない", vbOKOnly, "NG"
WScript.Quit
End If
Set MyADOXC = CreateObject("ADOX.Catalog")
MyADOXC.Create ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & MyStrCurrDir & "\jisho'")
Set MyADOXC = Nothing
Set MyDbCnn = CreateObject("ADODB.Connection")
MyDbCnn.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & MyStrCurrDir & "\jisho'")
MyDbCnn.Execute ("CREATE TABLE tbl00(fld1 String, fld2 Memo)")
MyDbCnn.Execute ("CREATE INDEX MyIDX ON tbl00(fld1)")
MyDbCnn.Execute ("INSERT INTO tbl00 ( fld1, fld2 ) SELECT [sample#txt].fld1, [sample#txt].fld2 FROM sample#txt in '" & MyStrCurrDir & "' 'Text;'")
MyDbCnn.Close
Set MyDbCnn = Nothing
| foo = 1 | これでfooという箱に1という数字が入ります |
| foo = foo + 2 | fooという箱に元から入っている1に2が足され、3になります |
| foo = foo & "a" | fooの中身の扱いは数字から文字に変わり、"3a"になります |
| foo = 5 | "3a"の文字は押し出されて消滅、fooの中身は数字の5です |
| foo = "b" | 5は押し出されて消滅、fooの中身は文字の"b"です |
| foo = foo & "c" | 元から入っている"b"に"c"が足され、"bc"になります |
| foo = foo + "d" | 元から入っている"bc"に"d"が足され、"bcd"になります |
| foo = foo & 6 | 元から入っている"bcd"に"6"が足され、"bcd6"になります |
| foo = foo + "7" | 元から入っている"bcd6"に"7"が足され、"bcd67"になります |
| foo = foo + 8 | エラーになります(8を""でくくるか、+ を & に変えれば"bcd678") |
Option Explicit
Dim MyWITCH
Dim MyStrCurrDir
Dim MyChkDB, MyChkSAMPLE
Set MyWITCH = CreateObject("WScript.Shell")
MyStrCurrDir = MyWITCH.CurrentDirectory
Set MyWITCH = Nothing
Set MyWITCH = CreateObject("Scripting.FileSystemObject")
MyChkDB = MyWITCH.FileExists(MyStrCurrDir & "\jisho")
MyChkSAMPLE = MyWITCH.FileExists(MyStrCurrDir & "\sample.txt")
Set MyWITCH = Nothing
If MyChkDB = True Then
MsgBox "もう1回実験したいなら、そっちを消してから", vbOKOnly, "jishoファイルはすでにある"
WScript.Quit
End If
If MyChkSAMPLE = False Then
MsgBox "sample.txtがない", vbOKOnly, "NG"
WScript.Quit
End If
Set MyWITCH = CreateObject("ADOX.Catalog")
MyWITCH.Create ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & MyStrCurrDir & "\jisho'")
Set MyWITCH = Nothing
Set MyWITCH = CreateObject("ADODB.Connection")
MyWITCH.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & MyStrCurrDir & "\jisho'")
MyWITCH.Execute ("CREATE TABLE tbl00(fld1 String, fld2 Memo)")
MyWITCH.Execute ("CREATE INDEX MyIDX ON tbl00(fld1)")
MyWITCH.Execute ("INSERT INTO tbl00 ( fld1, fld2 ) SELECT [sample#txt].fld1, [sample#txt].fld2 FROM sample#txt in '" & MyStrCurrDir & "' 'Text;'")
MyWITCH.Close
Set MyWITCH = Nothing
Option Explicit
Dim MyWITCH
Dim MyStrCurrDir
Dim MyChkDB, MyChkSAMPLE
Set MyWITCH = CreateObject("WScript.Shell")
MyStrCurrDir = MyWITCH.CurrentDirectory
Set MyWITCH = Nothing
Set MyWITCH = CreateObject("Scripting.FileSystemObject")
MyChkDB = MyWITCH.FileExists(MyStrCurrDir & "\jisho")
MyChkSAMPLE = MyWITCH.FileExists(MyStrCurrDir & "\sample.txt")
Set MyWITCH = Nothing
If MyChkDB = True Then
MsgBox "もう1回実験したいなら、そっちを消してから", vbOKOnly, "jishoファイルはすでにある"
WScript.Quit
End If
'この時点でMyChkDBは用済み
If MyChkSAMPLE = False Then
MsgBox "sample.txtがない", vbOKOnly, "NG"
WScript.Quit
End If
'用済みになったMyChkDBに小人を召喚してしまう
Set MyChkDB = CreateObject("ADOX.Catalog")
MyChkDB.Create ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & MyStrCurrDir & "\jisho'")
Set MyChkDB = Nothing
Set MyChkDB = CreateObject("ADODB.Connection")
MyChkDB.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source='" & MyStrCurrDir & "\jisho'")
MyChkDB.Execute ("CREATE TABLE tbl00(fld1 String, fld2 Memo)")
MyChkDB.Execute ("CREATE INDEX MyIDX ON tbl00(fld1)")
MyChkDB.Execute ("INSERT INTO tbl00 ( fld1, fld2 ) SELECT [sample#txt].fld1, [sample#txt].fld2 FROM sample#txt in '" & MyStrCurrDir & "' 'Text;'")
MyChkDB.Close
Set MyChkDB = Nothing