2021年12月26日日曜日

Excle,Access Mysql 接続手順

Excle,Access Mysql 接続手順


Sub sql()

    Dim cn As New ADODB.Connection

    cn.ConnectionString = "Driver={MySQL ODBC 8.0 Unicode Driver};" & _

                          "Server=localhost;" & _

                          "Database=mysql;" & _

                          "User=root;" & _

                          "Password=toor"

    cn.Open

    Dim rn As New ADODB.Recordset

    rn.Open "select User,Host from mysql.user", cn

    Do Until rn.EOF

        Debug.Print rn("Host"), rn("User")

        Debug.Print rn!host, rn!user

        rn.MoveNext

    Loop

    rn.Close

    cn.Close

End Sub


その2

Sub samp2()

   Dim cn As New ADODB.Connection

    cn.Open "DRIVER={MySQL ODBC 8.0 Unicode Driver};Server=localhost;Database=mysql;User=root;Password=toor"

    Dim rn As New ADODB.Recordset

    Set rn = cn.Execute("select * from mysql.user")

    Do Until rn.EOF

        Debug.Print rn!host, rn!User

        rn.MoveNext

    Loop

    Debug.Print "samp2"

    rn.Close

    cn.Close

End Sub




2021年3月20日土曜日

MySQL 利用

mysql 利用

mysql ダウンロード

mysql-8.0.23-winx64.zip

初期化

mysqld --initialize

or

mysqld -I

サービス登録

mysqld --install MYSQL80

mysqld --remove MYSQL80

サービス起動

NET START MYSQL80

初期パスワード下記のファイルにある

C:\mysql864\data\DESKTOP30c.err

[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: !i0i1<%P_<hu

パスワード変更

SET PASSWORD = 'toor'

php.ini

extension=mysqli

extension=sqlite3

extension_dir = "ext"

MySQLの使い方

https://www.dbonline.jp/mysql/

%HOMEPATH%\\Desktop\php8\php -S 192.168.11.110:80 -t %HOMEPATH%\Desktop\eiloto

2021年3月19日金曜日

Windows での OpenSSH

Windows での OpenSSH

sshd.exe。リモートで管理されるシステム上で実行されている必要がある SSH サーバー コンポーネントです。

例 net start sshd

ssh.exe: ユーザーのローカル システム上で実行される SSH クライアント コンポーネントです

ssh-keygen.exe: SSH 用の認証キーを生成、管理、および変換します

ssh-agent.exe: 公開キーの認証に使用される秘密キーを格納します

ssh-add.exe: サーバーで許可される一覧に秘密キーを追加します

ssh-keyscan.exe: 複数のホストから公開 SSH ホスト キーを収集するのに役立ちます

sftp.exe: セキュア ファイル転送プロトコルを提供し、SSH 経由で実行されます

例 sftp pi@192.168.3.3

scp.exe: SSH で実行されるファイル コピー ユーティリティです

例 scp G20210318.mp4 pi@192.168.3.3:\var/www/html/qq/temp

例 >scp pi@192.168.3.3:\var\..\temp\G20210318.mp4 c:\users\nuc\desktop


end

2021年3月6日土曜日

phpでWebServerを動かす方法

php -S 192.168.11.113:8080 -t ../memo

 -S <addr>:<port> Run with built-in web server.

 -t <docroot>     Specify document root <docroot> for built-in web server.


PHP 8.0.2 (cli) (built: Feb  3 2021 18:36:40) ( ZTS Visual C++ 2019 x64 )

Copyright (c) The PHP Group

Zend Engine v4.0.2, Copyright (c) Zend Technologies

Google-code-prettify

Google-code-prettify

 <script src='https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js?skin=sunburst'/>


<pre class="prettyprint">

ここにコードを書く

</pre>


//

function T_Searchfom(arrayVal) {
    // arrayVal 指定した値が含まれるまで探し
    // clearInterval(W_T_Searchfom);
    const TAG = 'T_Searchfom->';
    let tempArr = arrayVal.concat();
    if (typeof (W_T_Searchfom) == 'number') {
        clearInterval(W_T_Searchfom);
    }
    W_T_Searchfom = setInterval(function () {
        let cont = 0;
        but[0].click();
        var temp = gnum();
        tempArr.forEach(function (e) {
            if (temp.indexOf(e) >= 0) {
                cont++;
            }
        })
        console.info(TAG, ' clearInterval(W_T_Searchfom)  ' + arrayVal.toString());
        if (cont == arrayVal.length) {
            clearInterval(W_T_Searchfom);
            console.info(TAG, temp);
            console.info(TAG, ' T_cpt2([' + temp + ',57,0])  ');
        }
    }, 200)
}
//


2021年3月3日水曜日

fetch() Ajax

// XMLHttpRequest()
function F_httprequest() {
    let req = new XMLHttpRequest();
    let url = '/' + CSVFile + '?key=' + Math.floor(Math.random() * (1 - 100) + 100);
    req.onreadystatechange = function () {
        if (req.readyState == 4 && req.status == 200) {
            let ajaxText = req.responseText;
            F_create_master(ajaxText);
            F_read_ajax(ajaxText);
        }
    }
    req.open("GET", url, true);
    req.send(null);
}

// fetch()
async function testFetch() {
    let pim = fetch('/' + CSVFile + '?key=' + Math.floor(Math.random() * (1 - 100) + 100));
    pim.then(function (msg) {
        msg.text().then(function (ajaxText) {
            console.log(TAGLine, 'step1');
            F_create_master(ajaxText);
            F_read_ajax(ajaxText);
        }).then(function () {
            console.log(TAGLine, 'step2');
        }).catch(function () {
            console.log(TAGLine, 'catch');
        })
    }).catch(function (e) {
        console.log(TAGLine, 'URLerror');
        console.log(e);
    })
}

// fetch() async await
async function testFetch() {
    let url = '/' + CSVFile + '?key=' + Math.floor(Math.random() * (1 - 100) + 100);
    let opt = {
        method: 'GET',
        headers: {
            // "Content-type": "application/x-www-form-urlencoded; charset=UTF-8",
        },
        // body: 'key=8080',
    };
    try {
        let pri = await fetch(url, opt);
        pri.headers.forEach(function (value, key) {
            console.log(key, value);
            // content - length 20949
            // content-type text/csv
            // date Fri, 05 Mar 2021 17:36:09 GMT
            // last-modified Fri, 05 Mar 2021 16:02:52 GMT
            // server SimpleHTTP/0.6 Python/3.9.0
        })
        let csvt = await pri.text();
        F_create_master(csvt);
        F_read_ajax(csvt);
    } catch (error) {
        console.log('error');
    }
}

2020年9月27日日曜日

JavaScript 気になるメソッド .reverse() .concat()

JavaScript  気になるメソッド
Array.reverse() 
reverse メソッドは呼び出した配列オブジェクトの要素をその内部で反転させ、配列を書き換えます。そして、書き換えられた配列を戻します。

Array.concat()
新しい配列に連結する配列や値です。すべての valueN 引数が省略された場合、 concat は呼び出された既存の配列のシャローコピーを返します。詳しくは下記の解説をお読みください。

例 値渡しの感じ
console.log('fns7(  [' + tx7 + ']  )' );
console.log('fns7(  [' + tx7.concat().sort((a, b) => a - b) + ']  )' );


https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array/concat


end