Accessのさんぷるコードができましたので(´Д`)貼っときます。

2014.08.21

Logging

突貫工事で作ったのでバグは多少あると思いますが{例えばsql インジェクション対策とか。}、Accessのsampleコードができましたので貼っときます。なお、これで何が出来るかって言えばDBの修正、追加、削除といった基本的な動きをします{挙動不審ぎみ嘘!?}。若干、ソースコードを弄くれば使い回しが出来るようにしております。飯くったり他のことをしながらもガリガリとコードを書きました。ちなみにAccessのViewerをマイクロソフトからダウンロードすると動作すると思います。ファイルは下記からダウンロードください。 追記:暇な時に改良していきますので( ゚д゚)ノ ヨロシクとコメントも暇があれば書いときます。そして無駄なコードがありますが、それも軽量していくつもりです(`・ω・´)。ちなみにいまはDBを空にすると落ちますので・・・・(直しました。)。?samplezip358.zip?[https://zip358.com/tool/samplezip358.zip][08/21 11:26]

Option Compare Database
Public db_x As Long
Public max As Variant
Function sel_all(tablename As Variant, tal_valname As Variant) As Variant
    Dim x As Long
    Dim y As Long
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge(999, 999) As Variant
    Dim val_n As Variant
    Dim val As Variant
    Set db = CurrentDb
    sql = "SELECT * FROM " & tablename & " ORDER BY ID ASC;"
    MsgBox sql
    Set RS = db.OpenRecordset(sql)
    Do Until RS.EOF
        For y = 0 To UBound(tal_valname)
            hoge(x, y) = RS.Fields(tal_valname(y))
        Next y
        RS.MoveNext
        x = x + 1
    Loop
    Set db = CurrentDb
    sql = "SELECT MAX(ID) as maxs  FROM " & tablename & ";"
    MsgBox sql
    Set RS = db.OpenRecordset(sql)
    max = RS.Fields("maxs")
    db_x = x - 1
    Set db = Nothing
    sel_all = hoge
End Function
Function up_in(chk As Boolean, tablename As Variant, tal_valname As Variant, tal_val As Variant, ID As Long) As Variant
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge_valname As String
    Dim hoge_val As String
    Dim hoge As Variant
    If chk = True Then
        For i = 0 To UBound(tal_valname)
            hoge_valname = hoge_valname & tal_valname(i) & ", "
        Next i
        hoge_val = sql_str(tal_val, "", "", True)
        sql = "INSERT INTO " & tablename & " (" & Left(hoge_valname, Len(hoge_valname) - 2) & ")VALUES (" & hoge_val & ");"
    Else
        hoge_valn_val = sql_str("", tal_valname, tal_val, False)
        sql = "Update " & tablename & " Set " & hoge_valn_val & " WHERE ID = " & ID & ";"
    End If
    MsgBox sql
    Set db = CurrentDb
    db.Execute (sql)
    Set db = Nothing
    up_in = True
End Function
Function del(tablename As Variant, tal_valname As Variant, tal_val As Variant) As Variant
    Dim sql As String
    Dim RS As DAO.Recordset
    Dim db As DAO.Database
    Dim hoge As Variant
    sql = "DELETE FROM " & tablename & " WHERE " & tal_valname & " = " & tal_val & ";"
    MsgBox sql
    Set db = CurrentDb
    db.Execute (sql)
    Set db = Nothing
    del = True
End Function
Function sql_str(hoge As Variant, tal_valname As Variant, tal_val As Variant, chk As Boolean) As Variant
    Dim i As Long
    Dim hoge_str As Variant
    If chk = True Then
        For i = 0 To UBound(hoge)
            If IsNumeric(hoge(i)) Then
                hoge_str = hoge_str & hoge(i) & ", "
            Else
                hoge_str = hoge_str & "'" & hoge(i) & "', "
            End If
        Next i
    Else
        For i = 0 To UBound(tal_valname)
            If IsNumeric(tal_val(i)) Then
                hoge_str = hoge_str & tal_valname(i) & " = " & tal_val(i) & ", "
            Else
                hoge_str = hoge_str & tal_valname(i) & " = '" & tal_val(i) & "', "
            End If
        Next i
    End If
    sql_str = Left(hoge_str, Len(hoge_str) - 2)
End Function

↑クラスdbソースコード

Option Compare Database
Dim max As Long
Dim ID As Long
Dim val_val As Variant
Private Sub Form_Load()
lod
End Sub
Sub lod()
    Dim db As db_db
    Dim val_name As Variant
    Dim x As Long
    Set db = New db_db
    val_name = Array("ID", "表題", "数値", "文字")
    val_val = db.sel_all("tableone", val_name)
    max = db.max + 1
    If cmb.ListCount > 0 Then
        For x = 0 To cmb.ListCount - 1
            cmb.RemoveItem 0
        Next
    End If
    For x = 0 To db.db_x
        cmb.AddItem val_val(x, 1)
    Next
    Set db = Nothing
End Sub
Private Sub cmb_Click()
    If cmb.ListIndex >= 0 Then
        Viw cmb.ListIndex
    End If
End Sub
Private Sub del_btn_Click()
    Dim db As db_db
    Dim hoge As Variant
    Set db = New db_db
    val_name = Array("ID", "表題", "数値", "文字")
    If ID > 0 And max > 1 Then
        hoge = db.del("tableone", "ID", ID)
    End If
    Set db = Nothing
    lod
End Sub
Private Sub in_btn_Click()
    Dim db As db_db
    Dim val_name As Variant
    Dim val As Variant
    Dim hoge As Variant
    chkchk
    val_name = Array("ID", "表題", "数値", "文字")
    val = Array(max, cmb, suuzi, moji)
    Set db = New db_db
    hoge = db.up_in(True, "tableone", val_name, val, max)
    Set db = Nothing
    lod
End Sub
Private Sub upd_btn_Click()
    Dim db As db_db
    Dim val_name As Variant
    Dim val As Variant
    Dim hoge As Variant
    chkchk
    val_name = Array("表題", "数値", "文字")
    val = Array(cmb, suuzi, moji)
    Set db = New db_db
    If ID > 0 And max > 1 Then
        hoge = db.up_in(False, "tableone", val_name, val, ID)
    End If
    Set db = Nothing
    lod
End Sub
Sub Viw(i As Long)
    ID = val_val(i, 0)
    suuzi = val_val(i, 2)
    moji = val_val(i, 3)
End Sub
Sub chkchk()
    If IsNumeric(suuzi) Then
        If suuzi > 9999 Then
            suuzi = 9999
        End If
    Else
        suuzi = 0
    End If
    If IsNumeric(moji) Then
        moji = "文字が不正>" & moji
    End If
    If IsNumeric(cmb) Then
        cmb = "文字が不正>" & cmb
    End If
End Sub

↑formソースコード

タグ

35, 358, access, db, https, sample, samplezip, SQL, Viewer, www, zip, いま, インジェクション, コード, こと, コメント, これ, サンプル, ソース, それ, ダウンロード, つもり, バグ, ファイル, マイクロソフト, ヨロシク, 下記, , , 修正, 削除, 動作, , 対策, 工事, 改良, , , 無駄, , 突貫, 若干, 軽量, 追加, 追記, ,

水曜日のカンパネラのコムアイさんが飛んでる。

2014.08.20

Logging

水曜日のカンパネラのコムアイさんが飛んでる、何処らへんが飛んでるかと言えば歌詞です。リズム(テンポ)の良い曲と飛んでる歌詞が面白いです、すべての曲が好きだとはいえないものの、モノポリーとか聞いているだけで駅名が覚えれてしまうとか、マリー・アントワネットとか歌詞が独特で面白かったりとか、この人水曜日のカンパネラの作る楽曲や歌詞は他の人とは違っていて異才さを感じます。売れるか売れないかとはわかりませんが、こういうユニットとはコアなファンが付きそうな感じがします。
好きなことをやって飯が食えるか食えないかって一般人に受け入れられるかどうかだと思うのです、その辺、水曜日のカンパネラのコムアイさんは良い線じゃないかと思いますとか言ってますが、この人、YOUTUBEの再生回数から見てそれなりに認知度あるユニットなんだと思います{自分が知らなかっただけで}。
※追記:コムアイさんが楽曲や歌詞を担当していたのではないみたいです{ボーカル担当}。

タグ

youtube, アントワネット, カンパネラ, コア, こと, コムアイ, すべて, テンポ, ファン, べん, ボーカル, マリー, モノポリー, ユニット, リズム, 一般人, , , 何処ら, 再生, 回数, 担当, , 楽曲, 歌詞, 水曜日, 独特, 異才, , 自分, 認知, , 追記, , 駅名,

映画:時をかける少女:タイム・ウェイツ・フォー・ノー・ワン

2014.08.19

Logging

時をかける少女(劇場予告)


タイム・ウェイツ・フォー・ノー・ワン{time waits for no one}=過ぎ去った時間は戻らないとかいう意味らしいです。この時をかける少女というアニメ映画はよく出来ているなと思います。内容の方は記載しませんが、結構おすすめ度の高いアニメ映画です。過ぎ去った時間は戻らないけど、未来は自分で切り開けます。この映画は過去に何度もタイムスリップして過去を書き換えていますが、実際、この世界は多次元{たぶん}なので、タイムスリップして過去を変えたとしてもそこから、次元が分岐するというオチ{突っ込みどころ(´Д`)}。過去に何度もタイムスリップするということは多次元世界(パラレルワールド)を複数つくる事になるのではないかと自分は思っています。そんな身も蓋もない事を考えて観なければ良いだけですね{※この映画、時をかける少女、青春アニメ映画は面白かったです}。
ちなみに、多次元世界の話でうまく説明している映画があります、ミッション: 8ミニッツ(ソースコード)と言う映画で何度も過去に戻って爆弾処理(何度も失敗する)をするというストーリーです、コレを観ると多次元世界と時間との関係をうまく説明しているように思えます。
時をかける少女もおすすめですが、映画、ミッション: 8ミニッツもおすすめ度の高い映画です。

タグ

com, For, ge-CeHgimHU, https, no, one, time, waits, watch, www, youtube, アニメ, ウェイツ, おすすめ, オチ, こと, スリップ, そこ, タイム, ノー, パラレルワールド, フォー, ワン, 世界, , 何度, 内容, 分岐, 多次元, 実際, 少女, 意味, , , 映画, , 時間, 未来, 次元, 自分, , 複数, 記載, , 過去, 青春,

100の基本っていう本を買いました(´Д`)

2014.08.17

Logging

100の基本っていう本を買いました。簡単に言うとタイトルに惹かれて、そして本のデザインに惹かれて購入した本です。本の中身はまだ見ていませんが、本の表に書かれてある100番目の言葉に結構惹かれて購入を決めました。「自分の基本の更新を常に行う。」、この言葉を実践するのは結構難しいかなと思ったりしますが、納得だったので、この本は自分に合うかもと思って購入。それって実は大事で、本のプロローグとか見て、難しいそうだなとか、すんなり想像できないなぁとか思ったら買わないほうが良いです。
ちなみに自分が自己啓発の本を読む理由の一つはCDやDVDのジャケ買いとほぼ同じです、そして本の中身をちらりと見て合うと思ったら購入します。自己啓発書を読んでいて、どうこう言えない部分も出てきますけど、自分はその事については、さらっと流します。本を読むことによってのメリットは想像力を養える事と自分の考えとは違うことを説教がましくなく吸収できることです。自分は昔、本なんて読まない本なんて別にいいだよというタイプでした。キッカケは高校の時に、映画の原作を読んでみようと思ったのが最初です。それが結構ハマって、今に至るという感じですね。

タグ

100, cd, DVD, こと, ジャケ買い, ソレ, タイトル, デザイン, プロローグ, まし, メリット, 一つ, 中身, , 吸収, 啓発, 啓発書, 基本, 大事, 実践, 想像, 想像力, , 更新, , 理由, 簡単, 納得, 自分, 自己, , 言葉, 説教, 購入, 部分,

Access2013届きましたよ(;´Д`)ハァハァ

2014.08.17

Logging

Access2013が手元に届きました。それは良かったのですけどポストに投函されてました。実際、これってメール便ではないので投函ってあり得ないのですが…。1万2千円の品物を投函って!!まぁ田舎だから取っていく人もいないだろうけど・・・と愚痴りながら、中身を開封してたらアレ!?( ´・ω・`)< ショボいぞ!!、プロダクトキーの赤いカードとインストールの手続き書の薄っぺらい紙だけ入ってました{店頭で聞いたとおりだ(´・ω・`)}。さっそくマイクロソフトのアカウントでログインし指定したURLからダウンロード&インストールしました。ちなみに2013の印象ですけど、UI(ユーザーインターフェース)はほぼAccess2010と変わってません、なので2010から移行される方は戸惑うことはないと思います。
今月か来月にはサンプルコードをUPします{忘れているかも(´Д`)、そのうちUPと思ってください}。

 

タグ

, 2, 2010, 2013, access, nbsp, UI, UP, url, アカウント, アレ, インストール, インターフェース, うち, カード, キー, コード, こと, コレ, サンプル, ショボ, ソレ, ダウンロード, とおり, ハァハァ, プロダクト, ポスト, マイクロソフト, メール便, ユーザー, ログイン, , 中身, , 今月, , 印象, 品物, 実際, 店頭, 手元, 手続き, 投函, 指定, , 来月, 田舎, 移行, 開封,

土佐人{自作サイト}、鳴かず飛ばず!?。

2014.08.17

Logging

土佐人{tosajin.info}という自動更新サイトをひとつ制作しているのですけど、本当はもっと、まともなポータルなサイトにしたいですね。でも、金ナシ、やる気なしな自分がいます。本当はもっとやりたいことはあるんです。アイデアもいろいろ持っていますが、行動に移すことをしない自分がいます。本当にやる気だけなんですよね。例えば、嫌なことやいやがらせ等をされたりすると直ぐにやる気なくします。そこで頑張ろうとかいう考えは持ちあわせてません?。なにくそというど根性タイプではなく、別にいいや勝手にすればタイプです{裏では・・・}、作る気が無くなります。基本的に張り合う気がないのです、論理的に時間の無駄と思えばほっときます。
言いたいことは一応言いますが、ある程度言うこと言ったら終わりです。ちなみにtosajin.infoは当分、このままで放置します。やる気が出たら更新しますが・・・当分このまま運営。いま一つだけ温めているアイデアがあります、そのアイデアのサイトを年内か来年あたりに公開するつもりです。まぁでもその頃、違うことしてそうだけど・・・。
ドメイン所有に関してですが、今後、減らしていく方向で動いています。

タグ

100, BY, ME, STAND, アニメ, おすすめ, キャラ, こと, コンビ, スタンド, トコロ, ドラえもん, のび太, ヒット, ブルーレイ, マヌケ, 上映, 不二雄, , 人生, , , 全て, 勉強, 原作, , 大活躍, 子供, 映画, , 未来, , 漫画, 犯罪, 的中, , 素直, 自分, 藤子, 行為, , ,

良いこと聞いた、今のマイクロソフトの製品は{知らなかっただけ}

2014.08.16

Logging

今のマイクロソフトの家庭向け製品は、パッケージとか言いつつも全てダウンロードしてインストールする方式になっているのだと言う事を知ったU>ω<)ノ{情報筋はアプライド}。ちなみにヤマダ電機にも足を運んだのですが、アカデミック版しか在庫がないと言われてアプライドへ行ってきましたが、値段が少々、ヤマダ電機よりお高いので断念。結局、買わずに帰ってきてネットでパッケージ版を購入しました。先ほど言ったようにマイクロソフト製品はダウンロード版に移行したということなので、ネット購入したほうが安くOffice製品は買えるということです!!。メモ書き程度に残しときます。
ちなみに、ひとつ疑問を抱いたのが・・・それってOSの方もなのかなぁっていう疑問です?、次期OS、Windows9になったらOSを移行するつもりなので、それまでは疑問符です{一度、8.1にバージョンアップしていたのですが、結局、7に戻しました。}。

タグ

7, 8.1, , Office, OS, Windows, アカデミック, アップ, アプライド, インストール, こと, ソレ, それまで, ダウンロード, つもり, ネット, バージョン, パッケージ, ひとつ, マイクロソフト, メモ書き, ヤマダ電機, 一度, , , 値段, 全て, 在庫, 家庭, 少々, 情報, 断念, , 方式, 次期, 疑問, 疑問符, 移行, 製品, 購入, ,

accessを購入します{本日、購入}。

2014.08.16

Logging

Access2013を購入します、旧のアクセスは持っているのだけどセキュリティ上使用できなくなったので購入します。ちなみにアクセスは、いまいち使い勝手良くなかったので今まで牽制していましたが、この頃、使用してみて基本的にエクセルVBAとそんなに変わらないなという事がわかりました。エクセルVBAにDB機能とシステム要素が付与したものと考えると良い感じですね。ただ、Formの呼び出しなどが、もっとソフト開発(VisualStudio)よりな呼び出しになっている感じです{最初はわからなったです}。よくよく考えるとVisualStudioなんてものを使用せずとも結構これだけで、ひと通りの事が出来そうです{前にも同じこと言っていた気がします}。
購入して何を作るかっていう所ですけどサンプルコードをひとつ作って見ようかなと、あとは、ちょっとしたデータ入力のために簡易てきな入力システムみたいなものを作ってみようと思いますが、こちらは公開しません。

タグ

2013, access, db, Form, VBA, VisualStudio, アクセス, あと, いまいち, エクセル, コード, コチラ, こと, これだけ, サンプル, システム, セキュリティ, ソフト, ため, データ, ひとつ, ひと通り, もの, , 付与, , 使い勝手, 使用, 入力, 公開, , 感じ, , , 最初, 本日, 機能, , 牽制, 簡易, 要素, 購入, 開発, ,