Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 9691

C#とさくらのレンタルサーバーのMySQLをつなぐDB

$
0
0

C# + さくらのレンタルサーバー + MySQLをつなぐ

参考画像

s1.PNG

とりあえずコード

publicstaticstringgetDB(){// さくらのホスト名stringhost="iiiiii.sakura.ne.jp";// さくらユーザー名stringuser="iiiiii";// パスワードstringSpassword="password";// SSH接続varsshClient=newSshClient(host,22,user,Spassword);sshClient.Connect();uintdbPort=3306;uintlocalPort=3306;//データベースのデータベースの名前とユーザー名stringdbname="DBname";stringdbuser="DBuser";stringdbpassword="Dpassword";//mysql0000.dbのやつstringserverName="mysql1018.db.sakura.ne.jp";//サーバーフォワーディングvarsshForward=newForwardedPortLocal("127.0.0.1",localPort,serverName,dbPort);sshClient.AddForwardedPort(sshForward);sshForward.Start();varconnectStr="server="+"127.0.0.1"+";";connectStr+="port="+dbport+";";connectStr+="user="+DBuser+";";connectStr+="password="+Dpassword+";";connectStr+="database="+dbname+";";connectStr+="Pooling = False";stringtable="testtb";//ここにSQL文を書くvarsql="SELECT * FROM "+table;stringres=null;//MySQLサーバー接続using(varconnection=newMySqlConnection(connectStr))using(varcom=newMySqlCommand(sql,connection)){connection.Open();varselectCmd=newMySqlCommand(sql,connection);// 実行MySqlDataReaderselectResult=selectCmd.ExecuteReader();// MySqlDataReaderというクラスに結果が入っている// Read()を呼ぶことで次の行にアクセスするwhile(selectResult.Read()){varname=selectResult.GetString("name");// フィールド名でのアクセスstringdata=selectResult.GetString(1);// カラムインデックスでのアクセスif(name!=""){//ここでいい感じに処理res+=String.Format("{0}${1}\n",name,data);}}// 結果を閉じるselectResult.Close();connection.Close();sshForward.Stop();sshClient.Disconnect();returnres;}}

となる。頑張ろう

参考URL

ほぼこちらの内容です
https://qiita.com/skuromaku/items/67e46962228fe3cc6d7c

まずはこちらを参考にTeratermで接続したほうがよいかも
https://www.out48.com/archives/2495/

https://developer.aiming-inc.com/programming/connect-mysql-and-ssh-for-csharp/


Viewing all articles
Browse latest Browse all 9691

Trending Articles