よつやTips

元IT技術者がおくる情シス超入門:VB.NET / SQLServer / 弥生製品 / ひとり情シス

【SQL】超初心者向け!SQLServer開発環境を構築(準備編)

こんにちは、四ツ屋です。

お待たせしました!

今日はSQLServerの環境構築について話します。

 

 

SQLServerを使うために必要なもの

SQLServerを使えるようにするには、

SQLServer

SQLServer Management Studio

この二つをインストールする必要があります。

 

よく混同されてしまうのですが、SQLServer(本体)はデータベースの箱そのもの、Management Studioは管理ツールです。

www.yotsuyatips.com

以前、こちらの記事で、ばばーん!と名前だけ紹介しましたね。

 

SQLServer(本体)のDL方法

インストーラのダウンロードは、下記のMicrosoftサイトから可能です。

SQL Server ダウンロード | Microsoft

Enterprise無償評価版、Developerエディション、Expressエディションの3種ありますが、開発であれば、Developerエディションを利用します。

Enterprise無償評価版はその言葉通り、180日間のみの試用のためのエディションです。

また、開発したシステムを実運用に乗せる際に、小規模であればExpressエディションを無償利用できます。

※Developerエディションでは実際の運用は行なえません。開発環境でのみの利用となります。

 

SQLServer ManagementStudio(管理ツール)のDL方法

インストーラのダウンロードはは、下記のMicrosoftサイトから可能です。

SQL Server Management Studio (SSMS) のダウンロード | Microsoft Docs

ちなみに、SQLServerの本体と、管理ツールとなるManagementStudioは独立していますので、バージョン(2014とか2016とか、15とか17とか)を揃える必要はありません。

ただし、ManagementStudioの方は最新版にしておくことをオススメします。

 

※補足※

開発環境のSQLServer本体と、実運用環境のSQLServer本体のバージョンは揃えておいた方が良いです。

データをバックアップ・復元する際に、下位互換がOKでも上位互換がNGだからです。 

 

※下位互換・上位互換とは※

古いバージョンのバックアップデータを新しいバージョンのSQLServerで利用することを下位互換といいます。逆に、新しいバージョンのバックアップデータを古いバージョンのSQLServerに復元して利用することを上位互換といいますが、この場合は復元に失敗します。

 

 次回!インストールやります!!

【超初心者向け】弥生販売ってなんだろう?

先日、個人事業主の知人から、弥生販売の購入を検討しているとのことで相談を受けました。

 

実は四ツ屋、7年ほど前に弥生販売のインストラクター資格を取っております。

以前の職場で弥生製品の販売も行っていたので、とりあえずあればいいかな程度でした。

ただ、退職後は宝の持ち腐れと言うか、ただ資格更新だけは続けているペーパーインストラクター状態。

現在、弥生の顧客管理を利用しているそうで、そのあたりの要件をヒアリング。電気屋さんの弥生関連コーナーで長時間待った挙句に色々と相談したようですが、「こっちで聞いたほうが早かった・・・」と言っておりました。(笑)

 

相談を受けた実例に基づいて、弥生販売について確認していきます。

 

 

弥生販売では、どんなことができるのか?

基本的には見積~売上、請求書の発行と売掛管理と、発注~仕入、買掛管理が行えます。

発注と仕入れを行うということは在庫の管理も行えますし、そのための商品台帳、顧客台帳の登録なども可能です。 

 

ライト版である「弥生の見積・納品・請求書」では売掛の管理は出来ないので、単純に見積書や納品書、請求書を作成するためのソフトになります。

たとえば、弥生販売でできる売上明細の表示など、分析機能も在庫管理機能もありませんので、そこまでやりたい、となると弥生販売を購入するかたちになります。

 

これまでのデータは移行できるのか?

これは新たにソフトを導入するにあたって、非常に気になるところですね。

弥生販売では各種台帳(顧客、商品など)へのCSVインポートが行えるほか、売上のデータもCSVで取り込みが行なえます。

※ただし、弥生顧客等で作成した履歴データを弥生販売へそのまま取り込むなどはできかねてしまいますので、ご注意ください。

基本的には、

CSVで台帳を作る

CSVで取引データをインポートする(ちょっと大変です)

・同じ弥生販売からバージョンアップする

このあたりが可能です。

 

消費税増税にはどう対応している?

弥生販売18の時点で確認できているのは、10%になることまでは確実なので、日付単位で消費税率を情報としてもっています。

伝票単位で税率を設定できますし、今のところ、10%にまでは対応しています。

消費税率の適用年月日は税区分表で確認できます。
伝票を新しく作成する場合、伝票の明細部で商品を選択すると、伝票の日付に応じて税率(課税区分)が自動で表示されます。

  • 伝票の日付を消費税率8%の施行日以後に設定した場合 
    →税率8%が表示されます。

また、今後、消費税率が上がるような法改正があった場合でも、あんしん保守サポートに加入していれば、プログラムのアップデートで対応してもらえるようです。

消費税率の適用年月日が法令改正によって変更された場合、あんしん保守サポートご契約中のお客さまへ法令対応プログラムの提供を行います。

 

※今のところ、軽減税率に関してはまだ不確定要素が多いため、弥生のサイトをご確認いただくのが一番良いかと思います。

www.yayoi-kk.co.jp

 

各エディションについて

 弥生販売にはスタンダードエディションのほか、プロフェッショナル、ネットワークエディションがあります。

スタンダード・エディションでは一定の機能のみに制限されています。

プロフェッショナル版、ネットワーク版は全機能仕えるほか、プロは2台まで利用可能です。3台以上で利用する場合はネットワーク版の購入が必要です。

また、プロフェッショナルもネットワーク版も、複数台の利用の場合にはいずれか一台のPCにSQLServerをインストールし、そのデータベースにデータを格納する形になるため、サーバ側のPCが起動していないと使えないので要注意です。

 

スタンダード版で制限される機能は以下です。

仕入機能(発注・仕入

・在庫管理機能(出荷・生産・入荷・棚卸)

・買掛管理(支払処理・支払消込・支払管理)

・集計・分析(仕入集計・仕入分析・仕入推移)

基本的に仕入と在庫管理は

また、弥生販売11から新しくなった帳票レイアウタについてですが、10以前用の旧レイアウタもスタンダード版では利用できないため、10以前から利用されている場合は注意が必要です。

 

 

いかがでしたでしょうか?

弥生販売の導入を検討されている方の参考になれば幸いです。

【備忘】MySQLで大文字小文字を判断するには

COLLATEで照合順序を設定しようとおもったら、

_ciは使えたけど_csが使えなかったので、WHERE句の両辺にバイナリ演算子を付けてみたらうまくいったというはなし。

照合順序については、どういう動きしてるのかなーってのがイマイチ理解できてないので、また改めて。

 

例文。

たとえば、特定の文字を大文字・小文字で一致するかどうかを判断したい場合。

 

SELECT *

  FROM table

 WHERE BINARY field = BINARY 'AAA123'

 

これだと、'aaa123'のようなケースもきちんと除外される。

【備忘】MySQLではROW_NUMBER関数と同様の関数がない。

タイトルのとおりです。(ぷんすこ)

 

SQLServerに慣れていた四ツ屋、先日仕事でデータ抽出を頼まれたので、あ、これはROW_NUMBER関数で最大値を取ってあげたら親切かもな、という気持ちで意気揚々と入力。

エラー。

 

なんじゃとぉおおおおおお!!!?!?!?

MySQLではそもそもROW_NUMBER関数は使えないし、同じように分類ごとに順序をつけて付番する、なんて便利な関数が、ない。

 

どーしたらえぇのかな、と調べてみるものの、ぱっと使えそうなものが見つからなかったので、探してみます。

使えそうなものがあればこちらで紹介します~!

【雑記】MySQL超初心者になってしまった▼

こんにちは。四ツ屋です。

最近ブログをサボってすみません。

転職してちょっとバタバタしておりました。

 

いい加減に書きかけの記事をアップしろよって感じなのですが、転職を果たした先がなんとMySQLでしたので、そのことについて少し書いておきたいと思います。

 

開発環境が違うと慣れるまでが大変ですね。

しかも割りとセキュリティがガッチガチになってるし、開発部署にいる訳でもないので何ともはや、という感じです。

 

MySQLってなんなの?

ワードプレスにも使われてるデータベースってのは聞いたことがあります。特にWeb系ではLAMP環境とかよく言われますよね。

LAMP環境とは、下記各種環境の頭文字を取ったもので、

L → Linux(OS)

A → Apache(Webサーバのアプリケーション)

M → MySQL(データベース)

P → PHP(プログラムの言語)

です。よくWebで見るのがこのLAMP環境です。

 

MySQLオープンソースなので、ぶっちゃけお金がかかりません。

SQLServerであれば、ExpressEdition以外はそこそこ高価になってくるので、無償なのは有難いですね。

 

MySQLを使うための管理ツール

私はとりあえずA5SQLというツールを使ってます。

A5:SQL Mk-2 - フリーの汎用SQL開発ツール/ER図ツール .. 松原正和

割りとSQLServerManagementStudioに似ていますが、ピリオド入力時の予測表示がわかりづらいのと、複数のSQLを同時に発行したときの表示は少し見づらいといったところです。

ただ、左ペインにDBの一覧、右上にSQL入力域、右下に結果表示というのは安心します。(笑)

いまのところ、Microsoft信者の四ツ屋はManagementStudioしか使ったことがなかったので、他のツールも入れてみて今後弄ってみたいなーと思います。

ツールなんてのは慣れだ、っていう意見もあるかもしれませんが、やはり毎日使うものは慣れてたほうがいいなぁと思います。

SQLServerの構築も終わってないのにMySQL構築しようと思ってたりする…テヘ

 

SQLで使える関数

これね~、やっぱりSQLServerに慣れてると、違いますね。

もう少し使い込んでみると慣れてくるのかもしれませんが、カラダにSQLServerが染み込んでる身としては、やっぱり違和感あったりします。

RIGHT関数でゼロ埋め(数値「123」を文字列「000123」のようにすること)ができなくて最近モダモダしてしまいました。

他にも、型変換もCONVERTじゃなくてCAST。

引き数じゃなくてasで型指定とか、モロモロ・・・

 

何より、ツールのせいなのか、エラー内容が英語、これはいただけない。

日本語でおk!!!!!!

と、おもわず叫んでしまいそうになりました。

 

Web開発中心にやってきた人にとってはこれが普通のことなんだろうし、イマドキSQLServerかよ、みたいに言われることもちょいちょいあります。

Microsoftの畑で育てられた四ツ屋にとっては、色々と新鮮な驚きがありました。

まだまだ修行がたりないですね。(笑)

 

でも、クエリを作ることや、DBの定義書を眺めたり、あれこれ試行錯誤しながら抽出するのはホントに好きなんだなぁ、と実感しました。

 

【SQL】超初心者向け!基礎学習用の本を紹介

こんにちは、四ツ屋です。

今日は、7年ほど前に遡って、四ツ屋がどうやってSQLを学習してきたかを思い起こしながら、その当時参考にした初心者向けの書籍を紹介したいと思います。

 

7年前・・・四ツ屋はまだ、若かった・・・

 

 

手始めに読む、初心者向け参考書

まずは、初心者向け。

何をどうしたらいいのか教えてよ!という方には・・・

ばばーん。これです。

これ一冊あれば、大抵のことはわかります。

データベースとは何ぞや?とか、構成、SQLの書き方などなど。

四ツ屋の脳内にはこの本の中身が収まっているといっても過言ではありません。

そのくらい、すごーく分かりやすい本です。

読む気があれば、習得できますよ。

※ぶっちゃけこの本が習得できていれば、うちのブログ意味なくねーってレベルでわかりやすい

 

ちなみに、この本にはPostgreSQLの学習環境が入ってます。

データベースはSQLServerのほかにOracle、Postgre、MySQLなど色々ありますが、当サイトではSQLServerを中心に解説していますので、後々、SQLServerの実行環境のインストール方法も解説しますね。

 

慣れてきたら、このリファレンスを使え!

四ツ屋が今でも手放せない一冊がこれです。

これはもう、ボロボロになっても使っています。

書き込んでもいるのですが、何が素晴らしいって、各データベースごとに対応した構文が記載されていることです。

同じような構文でも、このデータベースには使える・使えないが見えているのが素晴らしい。

関数のそれぞれの引き数と戻り値も記載があって、素晴らしい一冊です。

 

あとは、使用例がものすごく豊富です。

たとえばCONVERT関数(型変換を行う関数)ですね。

文字から数値、数値から文字は勿論ですが、日付の値から文字列に変換するときのフォーマットがとにかく見やすい。

毎回わからなくなってしまい、すぐこの本に頼るので、すっかり開いたクセがついてしまうほどです。

※この本の使い方

それぞれの関数の種類ごとに章が分かれているので、使いたい関数がすぐわかります。

例えば、「日付を加算したいんじゃー!」と思ったら。

1.まずは日付関数の最初のページをひらきます。

2.一覧から、用途に応じた関数名を調べます。

3.関数名のページを開いて、構文を調べます。

これだけ。他にも似たような関数の一覧が並んでいるので、どれを使うかはデータベースや用途に応じます。

私は、SQLServerに対応している関数のみを使用するので、マーカーで使えるものだけ色を塗ったりしています。

よく使う関数には付箋も貼ってあるのですが、すっかりボロボロです。

 

 

以上、四ツ屋おすすめの二冊を紹介しました。

次回はSQLServerの環境構築を紹介できればと思います~!