#なんで今更
私用のメモ兼なんかググってもやりたいことがパッとでなかったので書いちゃいます。
#環境
OS :Windows10 Pro 64bit
IDE:Visual Studio 2015
DB :MySql 5.7.18
#MySQL導入
####MySQLインストール
https://www.dbonline.jp/mysqlinstall/
このページ見てインストールとPATHの確認にあるコマンドプロンプトで実行できるかまでやってください。
あとインストール時のパスワードを忘れないようにしましょう。
#テーブル作成
MySQL導入後コマンドプロンプトを管理者モードで起動し下記を打ち込みます。
mysql-u root -p
そうするとパスワードを入力してねと出ると思うのでインストール時に入力したパスワードを入力し、MySQLに入ります。
次にデータベースとテーブルを作ります。私は下記な感じで作りました。
#データベースを新しく「testdb」との名前で作って、
#その中にusersってテーブルを作ってデータを入れる。
create database testdb;
create table testdb.users(
id int not null auto_increment primary key,
name varchar(255),
email varchar(255) unique,
password char(32)
);
INSERT INTO users (id, name, email,password)
VALUES (1, 'hoge', 'hoge@hoge','fuga');
#コードを書く・・・前に
VisualStudioそのままだとMySQLに接続できないのでMySQL Connector/Netを入れましょう。
VSを立ち上げて「新規プロジェクトを作成」を選択、WindowsフォームアプリケーションとかでOKを押下しプロジェクトを作成します。
その後ソリューションエクスプローラーから作ったプロジェクトを右クリックし「ソリューションのNuGetパッケージの管理」を選択します。
出てきたNuGetウィンドウの参照を選択して検索窓に「MySQL.Data」と入力して一番上(多分)に出てきたMySQL.Dataをインストールしてください。
#XMLを作成するコード
あとはコードを書くだけです、私はこんな感じでボタンを押したら任意のパスにXMLが出力されるような感じにしました。
コードが汚いのは仕様ですご理解していただきたく。
エラーキャッチしてないのは見ないふりしていただきたく。
Imports System
Imports MySql.Data.MySqlClient
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim constr As String
Dim conn As MySqlConnection
Dim da As MySqlDataAdapter
Dim ds As DataSet
Dim sql As String
Dim filePath As String
constr = "userid=root;password=(設定したパスワード);Host=localhost"
conn = New MySqlConnection(constr)
Try
conn.Open()
sql = "SELECT * FROM testdb.users"
filePath = "出力したいパス\test.xml"
da = New MySqlDataAdapter(sql, conn)
ds = New DataSet("users")
da.FillSchema(ds, SchemaType.Source, "users")
da.Fill(ds)
ds.WriteXml(filePath)
conn.Close()
Catch ex As Exception
End Try
End Sub
End Class
#終わりに
MySQLからデータを受け取ってXML出力をする。という目標で検索しつつ上記のようになりました。
すぐ忘れそうなのでメモりましたが誰かの役に立てれば幸いです。
#参考
MySQLインストール
Mysqlコマンド
Visual Studio で MySQL データベースに接続する
[方法 : データセットを XML として保存する](https://msdn.microsoft.com/ja-jp/library/ms233698.aspx"方法 : データセットを XML として保存する")