2013年3月28日木曜日

SQLServer 15023: ユーザーまたはロール は現在のデータベースに既に存在?!

さらに続き。
環境作成の道のりは険しい。
sql文のバッチファイルを流しただけでは、だめ、とは(><)。

一般ユーザでは、
「ログインにマッピングされたユーザ」で一覧に出てこないデータベースがあったので、
saでログインして、そのユーザに対し、使用したいデータベース名にチェックを入れると、


ユーザー'sql1'の作成に失敗しました。
ユーザー、グループ、またはロール'ユーザ名'は現在のデータベースに既に存在します。
(Microsoft SQL Server 、エラー:15023)

とエラー表示。

【解決方法】
以下のSQLを実行して、ユーザーマッピングを修復した

USE データベース名
EXEC sp_change_users_login 'Update_One', '現在のDBに存在するユーザー名', 'SQL Serverログイン名'

参考にしたサイト↓

SQL Server テーブルが見えない?!

さっきの続き。

Microsoft SQL Server 2008 のSQL Server Management Studio のオブジェクト エクスプローラで、
見えないテーブルがある。
([データベース] フォルダを展開し、さらに特定データベースを展開し、
テーブルを展開しても表示されない。)

saだと見えるので、テーブルはできている。
テーブルはsaで作成し、一般ユーザを登録し、
そのユーザにテーブルアクセスの権限は与えている。

どうやら、スキーマー名がデフォルトのdboため、見えないようだ。
(ユーザ名sql1でスキーマsql1のテーブルは見える)

試行錯誤して、以下を実施したら、見えるようになった。
(正しいかどうかは不明 ^^;)

①インスタンス直下のセキュリティのログインの特定ユーザ名をダブルクリックして
「ログインのプロパティ」を表示
②ユーザマッピングを選択し、「ログインにマッピングされたユーザ」で、
使用したいデータベース名にチェックを入れる。
③その「データベースロールメンバシップ」で、db_datareader、db_datawriterにチェックを入れる

(参考)
SQL Server Management Studio の使い方


SQLServer 現在のセキュリティ コンテキストではアクセスできません?!

1年ぶりのSQLServer2008。すっかり忘れている(^^;;)。
 sqlをバッチで流してデータベースを作成し、その後、 SQLServer2008のSQL Server Management Studioで のオブジェクト エクスプローラで [データベース] フォルダを展開すると、
エラーメッセージが表示された。
現在のセキュリティ コンテキストでは、サーバー プリンシパル 【ユーザ名】はデータベース 【データベース名】 にアクセスできません。 (Microsoft SQL Server、エラー:916)
解決策はマイクロソフトのサイトに詳しく書いてあった 
 要約すると、
オブジェクト エクスプローラで、[データベース] フォルダをクリック→
[オブジェクト エクスプローラの詳細] ページで、列見出しを右クリックし[表示のリセット] をクリック
その後、
オブジェクト エクスプローラで、[データベース] フォルダを右クリックし、[最新の情報に更新] をクリック
それでもだめな場合は、
オブジェクト エクスプローラで、[データベース] フォルダをクリック→
[オブジェクト エクスプローラの詳細] ページで、列見出しを右クリックし[照合順序] チェック ボックスをオフ
その後、
オブジェクト エクスプローラで、[データベース] フォルダを右クリックし、[最新の情報に更新] をクリック

2013年3月19日火曜日

テキスト回復コンバータでファイルを開いてください?!

Word2003で文書を開いたら、

この文書を読み取ることができませんでした。ファイルが壊れているようです。
 次の操作を行ってください: 
* ファイルを開いて、修復してください。
* テキスト回復コンバータでファイルを開いてください。

の表示(><)
[ヘルプの非表示(E)<<]クリックで詳細メッセージを見るが、
説明がわかりにくい。

結局、こういうことだった。

①Word2003を起動する。
②[ファイル] メニューの [開く] をクリックする。
③「ファイルを開く」ダイアログボックスで、破損したファイルをクリックする。
 ([Enter]を押したり,ダブルクリックしないこと!)
④[開く] ボタンではなく、その右隣りにある「▼」ボタンをクリックし、[開いて修復] をクリックする。

2013年3月15日金曜日

Androidスマホ紛失!!

先日、スマホを紛失するという、アンドロイダーにあるまじき失態をやらかした。
 2日間悶々と過ごした後、ふっと出てきたのでよかったが、反省をこめて、まとめる。

 1.電話をかけてみたが、何回かのコール音の後、留守番電話に(><)
   実はこのとき近くにあったのだが、マナーモードにしてたので、気がつかなかった。
   こういう時、マナー・モードを解除するアプリがあるということを後から知った…。     

2.ビルの6Fの会議室で作業をしているときにはポケットにあったが、
   作業を終えて地下1Fのレストランに入ったときに失くなっていた。
   来た道を戻り確認。落としたビルの管理室へ行ったが、届いていない、とのこと。

 3.ドコモへ電話。
   ドコモには「ケータイ補償 お届けサービス」というのがある。約2年間入ってて
   なくすことは無かったので、月399円をケチって入らなかったら、
   購入後3か月もたたないうちに、紛失!あぁ、ケチるんじゃなかった。

   まず、携帯お探しサービスで探してくれた。   
   が、失敗。
   そりゃそうだ、電池節約のため通信OFFにしてたんだ。
   裏目に出てしまった(T T)

   スマホが戻ってから試してみたら、GPSもオンじゃないと使えなかった....
   GooglePlayから他のアプリをインストールした方がよさそう(^^;;
   無くした時に、後からインストールして追跡してくれるアプリPlan B   

   その後、利用一時中断手続き。
   利用一時中断のメッセージに、連絡用の代わりの電話番号を入れることもできるそう。

    ドコモには遠隔ロック(おまかせロックサービス)もあるが、画面ロック+おサイフケータイロック
   なので、画面ロックかけていた&おサイフケータイ使ってなかったので、用がなかった。

 4.Googleアカウントのパスワードやその他のメールやSNSのパスワード変更。
   変更する前に、PCからGooglePlayに入り、Googleのサービスを利用してないことを確認できたので、ちょっと安心。
   (マイアプリがアップデートされてなかった、マイアカウントの設定で前回の利用日が失くす前の日だった)

 5.翌日になっても出てこなかったので、帰りに交番へ届出。

 (おまけ)  無事スマホが見つかり、利用を再開したら、画面から電話のアイコンが消えていた?!  利用停止で消えてしまったのか。なら、再開で復旧してほしいぞ(苦笑)

2013年3月13日水曜日

Windows7 ファイルの共有ができない?!

無線LANで、ファイル共有ができなかったときの確認点

まず、あたりまえですが

・コンピュータ名(ほかのPCと重なっていないか)、
・ワークグループ名(同じか)
 [スタート][コンピュータ]を右クリック[プロパティ]
・IPアドレスが自動取得になっているか
 [コントロールパネル][ネットワークの状態とタスクの表示][ローカルエリア接続][ネットワーク][インターネットプロトコル4(TCP/IPv4)]
確認


1.パブリックネットワークでは共有できない
[コントロールパネル]-[ネットワークとインターネット]-[ネットワークと共有センター]
で、ネットワークが、
ホームネットワーク か 社内ネットワークになっていること

2.共有詳細設定の確認
[共有詳細設定の変更]で、
「ネットワーク探索を有効にする」「ファイルとプリンターの共有を有効にする」 が選択されていること
「パスワード保護の共有を無効にする」が選択されていること(有効だと同じユーザしかアクセスできない)

3.フォルダの共有設定
フォルダを選択し、右クリック->[プロパティ] 
[セキュリティ]が[Everyone][フルコントロール]になっていること
(設定方法)
フォルダを選択し右クリック->[特定のユーザ]->
[EveryOne]を追加し、アクセス許可レベルを([読み取り/書き込み]に)設定し、[共有]

ウィルスチェックソフトが邪魔をしているかも
(確認方法)一時的に止めてみる

  McAfeeウィルススキャンの例


その他、
ファイアウォールが邪魔をしているかも

(確認方法)
[コントロールパネル][システムとセキュリティ][Windowsファイアウォール]
[Windowsファイアウォールの有効化または無効化]で、一時的に無効にしてみる

2013年3月6日水曜日

Windows Javaアプリを強制終了させるには

複数プロセスが起動している場合は、
コマンドプロンプトで、

>jps
と入力するとJavaプロセス一覧が表示されるのでプロセスIDを確認。

>taskkill /pid プロセスID  /F

で強制終了する

Windows コマンドプロンプトの起動方法

通常、コマンドプロンプトを起動するには、
[スタート]-[すべてのプログラム]-[アクセサリ]-[コマンドプロンプト]
だが、
ちょっと早く起動する方法

1)Windowsショートカットを使う方法(Windows XP, Windows Vista, Windows 7)
  【ウィンドウズキー + R】 で「ファイル名を指定して実行」ダイアログ表示
     cmd
 と入力して [OK]を押下 

2)Windows7だとさらに、
 Windows(またはStart)キーを押してダイアログ表示
 [プログラムとファイルの検索]フィールドにカーソルがあることを確認して
 cmd
 と、入力してEnterキーを押下

2013年3月5日火曜日

Java Logging API JDK7では

Javaの標準ライブラリでログを出力してくれるLogging APIについては、
以下のサイトに詳しく書いてある↓
http://www.02.246.ne.jp/~torutk/javahow2/logging.html

Logging APIのJava SE6からJava SE7への主な変更点

①Logger.getLoger(Logger.GLOBAL_LOGGER_NAME)は非推奨になったので、
  Logger.getGlobal()を使うこと
 
 (非推奨になった理由 このグローバル定数は初期化時にデッドロックが発生する可能性がある)

②SimpleFormatterクラスのフォーマットをプロパティで記述できる
 (Java SE 6まではSimpleFormatterクラスのサブクラスを定義しないといけなかった)

しかし、(Java SE7 update17時点では)実装に問題があり、ログが出ないことがある。
logger.setLevel(Level.INFO)を呼び出すことで回避できるらしい。
が、コンソール出力はOKだが、ファイル出力はNGだった。

(例)ソースの一部
  Logger logger = Logger.getGlobal();   // Logger.GLOBAL_LOGGER_NAME)は非推奨
  logger.setLevel(Level.INFO); // バグ回避
  logger.info("info log");

Javaアプリケーションでログ出力するには

Javaでよく聞くログライブラリは、
①java.util.loggingパッケージ
②Apache Log4J
③SLF4J
④commons-logging
⑤Logback

①はJDK1.4から入っている標準ライブラリ
それ以前は②を使ってたから、いまだにLog4Jを使ってるところが多いらしい。
②Log4Jの創始者中心になって開発したのが、③SL4J

①・②・③はログを出力してくれるライブラリだが、
④⑤は、ラッパー。
実際のログ出力に何を使っていたとしても、標準のインタフェースを提供するもの。
⑤Logbackは、④commons-loggingの後継と言われている。

まとめると、
 昔はApache Log4J+commons-logging 
だった(いまでも一番多い)が、
 これからはSLF4J+Logback

でもそのまえに標準のjava.util.loggingパッケージを使ってみよう。
機能的には劣るが、なんせ標準パッケージなので、
何も準備がいらないのがいい!
(②や③はjarファイルをダウンロードして、クラスパスを設定しないといけない)

2013年3月2日土曜日

Androidの隠しコマンド

Androidバージョンが表示されている個所を連打すると、
そのOSバージョンのキャラクターが出る話は有名だが、
今日、たまたま見つけてしまったのは、

電話番号の入力画面から、
*#*#4636#*#*
を入力すると、
携帯電話の情報を表示・設定できるらしい。

以下のサイトで電池節約術として紹介してあった。
http://androck.jp/news/topics/android-4-0life-tuushinnsetteihenn/

(自分の端末は「LTE WCDMA」となっていたので、「WCDMA only」にはしなかった。)

各メニューの説明↓
http://www.ecoop.net/memo/archives/2011-04-22-1.html

2013年3月1日金曜日

Androidアプリ公開から1ヶ月たって

1/29にAndroidアプリを公開してから、約1ヶ月過ぎた。
宣伝してもらおうと、レビュー依頼を出したが、
まったく取り上げてもらえず(^^;;;

結局、
2/27時点で、
合計インストール数 195
有効インストール数 84

どこにも取り上げられないと、こんな数なのだろうか。

入れてからアンインストールする人が多い?!
その理由が知りたい。。。。

それとも、一般的に、こんな数なのだろうか?

ずーっと評価がついてなかったけど、
100件を超えた頃「4」の評価が1つ\(◎o◎)/!
うれしかった~(*^^*)v