MySQLでのデータベース構築までのコマンド
昨日は外部のPCにアクセス権限を与えました。
次はデータベースを作ってみたいと思います。
まずプロンプト実行から
>mysql -u ユーザー名 -pパスワード;
とりあえず、これでログイン。
mysql >use データベース名;
これで使用するデータベースを指定します。
次はテーブルの作成です。
mysql >CREATE TABLE テーブル名(
>Number(クエリ名) int(型) primary key,
>ID varchar(50)
>);
とりあえず解説。
テーブル名を指定した後はカッコで全部の要素を括ります。
基本的な書式としては テーブル名(クエリ名 型,クエリ名 型,・・・クエリ名 型);
こんな感じです。長いので複数行に分けるのがトレンドみたいです。
INT型はどうやらオートでint(11)として生成されるらしいのですが、
varcharはちゃんと変数長を指定しないとエラーを吐く模様・・・
ちなみに上の例でPrimary keyを指定していますが、それに関しては記述しないでも結構です。
その後はSQL文にて命令を与えるので、それも書きたいのですが長くなるので後日・・・
とりあえず本日はもう帰ります。
次はデータベースを作ってみたいと思います。
まずプロンプト実行から
>mysql -u ユーザー名 -pパスワード;
とりあえず、これでログイン。
mysql >use データベース名;
これで使用するデータベースを指定します。
次はテーブルの作成です。
mysql >CREATE TABLE テーブル名(
>Number(クエリ名) int(型) primary key,
>ID varchar(50)
>);
とりあえず解説。
テーブル名を指定した後はカッコで全部の要素を括ります。
基本的な書式としては テーブル名(クエリ名 型,クエリ名 型,・・・クエリ名 型);
こんな感じです。長いので複数行に分けるのがトレンドみたいです。
INT型はどうやらオートでint(11)として生成されるらしいのですが、
varcharはちゃんと変数長を指定しないとエラーを吐く模様・・・
ちなみに上の例でPrimary keyを指定していますが、それに関しては記述しないでも結構です。
その後はSQL文にて命令を与えるので、それも書きたいのですが長くなるので後日・・・
とりあえず本日はもう帰ります。
外部からのMySQLへのアクセス方法
とりあえずソフトウェアの社内ローカルでロンチされる日も近いのですが、
となってくると問題がひとつ。他のPCからのデータベースへアクセスする方法です。
現在はデバッグと開発は全て一つのPCで行っているのですが、ロンチとなるとそうはいかない。
他所からデータベースが更新出来ないと話にならない。
ということでMySQLで外部ホストにアクセス権限を与えるコマンドを載せます。
ちなみにローカルネットワーク内での設定となりますので、ネットを介しての接続は
セキュリティ問題やら多々ありますので割愛します。
mysql> grant all privileges on データベース名.* to ユーザー名"アドレス"
ここで一旦解説。
上記コマンドのユーザー名とアドレスは外部から接続するユーザーの名前とアドレスを記入してください。
ホームネットワーク内ならローカルIPでもOKです。
続き
-> identified by 'パスワード' with grant option;
ここまでです。
パスワードも上記のユーザー名がログインする時に使用するパスワードを設定してください。
長いので二行に分けましたが、一つのコマンドとして使用してください。
またアドレスに関してですが、ローカル内のPC全てに権限を与える場合
「192.168.1.%」 このように記述してもOKです。
上記の「1」の部分は、デフォルトゲートウェイに応じて変更してください。
これでまた一歩前進です。
となってくると問題がひとつ。他のPCからのデータベースへアクセスする方法です。
現在はデバッグと開発は全て一つのPCで行っているのですが、ロンチとなるとそうはいかない。
他所からデータベースが更新出来ないと話にならない。
ということでMySQLで外部ホストにアクセス権限を与えるコマンドを載せます。
ちなみにローカルネットワーク内での設定となりますので、ネットを介しての接続は
セキュリティ問題やら多々ありますので割愛します。
mysql> grant all privileges on データベース名.* to ユーザー名"アドレス"
ここで一旦解説。
上記コマンドのユーザー名とアドレスは外部から接続するユーザーの名前とアドレスを記入してください。
ホームネットワーク内ならローカルIPでもOKです。
続き
-> identified by 'パスワード' with grant option;
ここまでです。
パスワードも上記のユーザー名がログインする時に使用するパスワードを設定してください。
長いので二行に分けましたが、一つのコマンドとして使用してください。
またアドレスに関してですが、ローカル内のPC全てに権限を与える場合
「192.168.1.%」 このように記述してもOKです。
上記の「1」の部分は、デフォルトゲートウェイに応じて変更してください。
これでまた一歩前進です。
遊戯王公認大会出場してきました。
埼玉でバイトしていた頃、しばらくトレカイベント運営していたのですが、
退職した後もヒマな土日には埼玉戻って店にも顔を出しに行って遊んでいるのですが・・・
なんと本日17日は遊戯王の公認大会が開かれるというではありませんか。しかも選考会。
まぁ選考会だけど、世界大会とか行く気無いし、新しい運営も気になったので出場することに。
ちなみに使用デッキはジャンクドッペル+デブリダンディ+TGみたいな混成品
第一回戦:対戦相手「代行天使(弱)」
構築としては今流行の代行天使というより、代行とシナジーするタダの天使って感じ。
入ってる代行者は多分アースとジュピターだけ、あとヒュぺリオン。
正直もうちょっと詰めて行けばもっと強かったと思う・・・。
一戦目:
先に動いたのは相手、クリスティア出されて軽く詰む。
そしてここからが地獄。
クリスティア除去→ヴァルハラ効果クリスティアその2
次ターン クリスティア除去+ヴァルハラ除去。勝ったと思ったら魔法の言葉
「墓地天使四枚」
さすがに降参しました。
二、三戦目;
さすがにクリスティア祭は終わった模様、シンクロもしないしヒュペリオン来ないなら問題ない。
ストレート勝利。
第二回戦:対戦相手「代行天使(強)」
もう正直いい加減クリスティア見飽きた。どんだけ天使強いんだよ。
純正でテンプレに忠実な代行天使。やっぱりテンプレ構築って重要だよね、うん。
運良く勝てたけど次やったら負けるかもしれない・・・。
一回戦:
お互いにヒュペリオン、ライコウ、ブラックローズの撃ち合い。
代行天使のデッキパワーは半端ないけど、マストカウンター見極め、プレイングで対応できるレベル。
長期戦にもつれ込めば先に相手が息切れを起こす。
お互いにライフが動かないままターンが進行し続け、相手が何も出来なくなった模様。
カードガンナーの1900打点で5回殴り勝利。
周りのギャラリーから「カードガンナー強えぇwwww」の歓声。
二回戦:
相手先行アース召還。ヴィーナスサーチ。アース処理できなきゃまずい展開。
一方こちらの手札にはアースを超える打点、対抗策なしw
これが代行天使の怖いところ。とりあえずマンイーターセットしてターン終了。
案の定返しにトリシューラ。手札のTGストライカーを持っていかれる。
まぁここまでは良かった。想定範囲内。ここまでは。
おろかな埋葬→余った玉コロを墓地に落とされる。このとき俺「なにそのプレイング?」状態
墓地のヴィーナス除外。ヒュペリオンまで出てきた。イタイイタイ。
そして聞きたくなかった。
「墓地天使四枚」
え??
2700+2700+2800
死んだwwwww
三回戦は一回戦と大体同じ流れ、撃ち合いの末こちらが高火力並べて圧殺。
決勝戦:ジャンクドッペルテンプレ
エンジンとしては完全にミラーマッチ。スパイスがどこに効いているかの違い。
感想としては、やっぱりテンプレは違うなーという感じ。
カオスソーサラー、ダークアームド。簡単に出てくる出てくる。
シンクロはほとんどされなかった代わりに、高性能の高打点が次々出てくる。
こちらが除去しても次々と優良モンスターが出され、対応しきれなくなり負け。
結果として準優勝でしたが、そこそこいい戦いが出来たと思います。
参加9人デッキ内容
代行天使*2
剣闘獣
ライトロード
ジャンクドッペル系*2
ラクダパーミッション
闇堕天使
旋風BF
来週もあるようなので、また違うデッキで遊びに行こうかと思います。
退職した後もヒマな土日には埼玉戻って店にも顔を出しに行って遊んでいるのですが・・・
なんと本日17日は遊戯王の公認大会が開かれるというではありませんか。しかも選考会。
まぁ選考会だけど、世界大会とか行く気無いし、新しい運営も気になったので出場することに。
ちなみに使用デッキはジャンクドッペル+デブリダンディ+TGみたいな混成品
第一回戦:対戦相手「代行天使(弱)」
構築としては今流行の代行天使というより、代行とシナジーするタダの天使って感じ。
入ってる代行者は多分アースとジュピターだけ、あとヒュぺリオン。
正直もうちょっと詰めて行けばもっと強かったと思う・・・。
一戦目:
先に動いたのは相手、クリスティア出されて軽く詰む。
そしてここからが地獄。
クリスティア除去→ヴァルハラ効果クリスティアその2
次ターン クリスティア除去+ヴァルハラ除去。勝ったと思ったら魔法の言葉
「墓地天使四枚」
さすがに降参しました。
二、三戦目;
さすがにクリスティア祭は終わった模様、シンクロもしないしヒュペリオン来ないなら問題ない。
ストレート勝利。
第二回戦:対戦相手「代行天使(強)」
もう正直いい加減クリスティア見飽きた。どんだけ天使強いんだよ。
純正でテンプレに忠実な代行天使。やっぱりテンプレ構築って重要だよね、うん。
運良く勝てたけど次やったら負けるかもしれない・・・。
一回戦:
お互いにヒュペリオン、ライコウ、ブラックローズの撃ち合い。
代行天使のデッキパワーは半端ないけど、マストカウンター見極め、プレイングで対応できるレベル。
長期戦にもつれ込めば先に相手が息切れを起こす。
お互いにライフが動かないままターンが進行し続け、相手が何も出来なくなった模様。
カードガンナーの1900打点で5回殴り勝利。
周りのギャラリーから「カードガンナー強えぇwwww」の歓声。
二回戦:
相手先行アース召還。ヴィーナスサーチ。アース処理できなきゃまずい展開。
一方こちらの手札にはアースを超える打点、対抗策なしw
これが代行天使の怖いところ。とりあえずマンイーターセットしてターン終了。
案の定返しにトリシューラ。手札のTGストライカーを持っていかれる。
まぁここまでは良かった。想定範囲内。ここまでは。
おろかな埋葬→余った玉コロを墓地に落とされる。このとき俺「なにそのプレイング?」状態
墓地のヴィーナス除外。ヒュペリオンまで出てきた。イタイイタイ。
そして聞きたくなかった。
「墓地天使四枚」
え??
2700+2700+2800
死んだwwwww
三回戦は一回戦と大体同じ流れ、撃ち合いの末こちらが高火力並べて圧殺。
決勝戦:ジャンクドッペルテンプレ
エンジンとしては完全にミラーマッチ。スパイスがどこに効いているかの違い。
感想としては、やっぱりテンプレは違うなーという感じ。
カオスソーサラー、ダークアームド。簡単に出てくる出てくる。
シンクロはほとんどされなかった代わりに、高性能の高打点が次々出てくる。
こちらが除去しても次々と優良モンスターが出され、対応しきれなくなり負け。
結果として準優勝でしたが、そこそこいい戦いが出来たと思います。
参加9人デッキ内容
代行天使*2
剣闘獣
ライトロード
ジャンクドッペル系*2
ラクダパーミッション
闇堕天使
旋風BF
来週もあるようなので、また違うデッキで遊びに行こうかと思います。
突然の仕様変更・・・!
ソフトウェア開発には付き物の「仕様変更」
早速洗礼を浴びることになるとは思いもよらず・・・
しばらく使ってた「MicroSoft SQL server2008」が今日出社したら繋がらない!
はて、なぜかと調べたところ。
「ライセンス切れ」
と言われました。
わーい。
せっかくだからとフリーで構築できる「MySQL」に乗り換えようとしたのですが、
構文がかなり違うじゃありませんか。
メモの意味も兼ねてMySQL構文つらつら載せます。
ちなみに「VisualBasic.net」で開発しています。
'インポート
Imports MySql.Data.MySqlClient
'宣言
Dim con As MySqlConnection
Dim cmd As MySqlCommand
Dim dr As MySqlDataReader
'接続構文
Dim connectionString As String = "server=さーばーあどれす;database=でーたべーす名;user id=ゆーざーID;password=ぱすわーど"
' --- ここまでが文頭 ---
'実働部分
con = New MySqlConnection(connectionString)
con.Open()
cmd = New MySqlCommand("SQL文", con)
cmd.ExecuteScalar()'SQL実行
con.Close()
' --- ここまで ---
今日一日作業して思ったんですが、「MySQL」のほうが「SQL Server」より
ソースがスマートに書けるっぽいです。
プロンプトでサーバーを弄りながら作業できる人はMySQLのほうが使いやすいかもしれません。
「MySQL Work Bench」っていうGUIもセットで入ってるのですが・・・
あれ、だめ。扱いにくい。俺がいけないのかもしれませんが、よくわからん。
プロンプト安定です。せっかくなんでプロンプトも載せますか~
> mysql -u ゆーざー名 -pぱすわーど
これだけでとりあえずログインできます。あとは内部でSQL文こねこね。
ちなみに基本的に内部では対話式で操作しなければならないのですが、
バッチファイルを呼び出し時に渡すことで、処理を一気に進めてくれます。これ便利
> mysql -u ゆーざー名 -pぱすわーど < ばっちふぁいる.bat
プログラムから呼んだりするときはこっちのほうがいいかも知れません。
早速洗礼を浴びることになるとは思いもよらず・・・
しばらく使ってた「MicroSoft SQL server2008」が今日出社したら繋がらない!
はて、なぜかと調べたところ。
「ライセンス切れ」
と言われました。
わーい。
せっかくだからとフリーで構築できる「MySQL」に乗り換えようとしたのですが、
構文がかなり違うじゃありませんか。
メモの意味も兼ねてMySQL構文つらつら載せます。
ちなみに「VisualBasic.net」で開発しています。
'インポート
Imports MySql.Data.MySqlClient
'宣言
Dim con As MySqlConnection
Dim cmd As MySqlCommand
Dim dr As MySqlDataReader
'接続構文
Dim connectionString As String = "server=さーばーあどれす;database=でーたべーす名;user id=ゆーざーID;password=ぱすわーど"
' --- ここまでが文頭 ---
'実働部分
con = New MySqlConnection(connectionString)
con.Open()
cmd = New MySqlCommand("SQL文", con)
cmd.ExecuteScalar()'SQL実行
con.Close()
' --- ここまで ---
今日一日作業して思ったんですが、「MySQL」のほうが「SQL Server」より
ソースがスマートに書けるっぽいです。
プロンプトでサーバーを弄りながら作業できる人はMySQLのほうが使いやすいかもしれません。
「MySQL Work Bench」っていうGUIもセットで入ってるのですが・・・
あれ、だめ。扱いにくい。俺がいけないのかもしれませんが、よくわからん。
プロンプト安定です。せっかくなんでプロンプトも載せますか~
> mysql -u ゆーざー名 -pぱすわーど
これだけでとりあえずログインできます。あとは内部でSQL文こねこね。
ちなみに基本的に内部では対話式で操作しなければならないのですが、
バッチファイルを呼び出し時に渡すことで、処理を一気に進めてくれます。これ便利
> mysql -u ゆーざー名 -pぱすわーど < ばっちふぁいる.bat
プログラムから呼んだりするときはこっちのほうがいいかも知れません。
ブログ公開はじまります。
とりあえず作れ作れと言われたのでブログ始めます。
調子がいい時やネタが見つかったら随時更新という形で、
Twitterもブログパーツで置いておくので是非見てください
絶対に見ないでください。
んでは俺、スタート。