ホーム   フォーラム   FAQ
 
メインメニュー
ログイン
ユーザー名:

パスワード:


パスワード紛失

SQLServerテーブルへのアクセスについて

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています
depth:
0
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 .3 .4 | 投稿日時 2011-11-10 17:27
noukan  常連   投稿数: 44
ソフト:MagicV9Plus 9.4JP1b
DB:SQLServer2005

SQLServerのテーブル名:dbo.職員マスタにはアクセスできるのですが、
テーブル名:jinji-admin.職員所属にはアクセスできません。
"MS-SQL Serverデータベースゲートウェイは、OLE-DB(Object Link Embedding DB)インタフェースを使用して記述されています。"ということでdbo.〜〜はアクセスできるのだろうと思うのですが、それ以外のjinji-admin.〜〜の場合でもアクセスする方法はないのでしょうか?

因みに、Magic側でのテーブルリポジトリのDBテーブルには、dbo.職員マスタの場合、"職員マスタ"でアクセスできます。
その、DBテーブルに"jinji-admin.職員所属"と記述すると新規でDBがCreateされます。
"jinji-admin.職員所属"は他のプログラムで使用しているので名前を変更することができません。

回答お願いします。
投票数:1 平均点:10.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-11-10 17:33
Tanda  長老   投稿数: 2151
noukan さん、こんにちは。

外部で作成されたテーブルにアクセスするには、Magic の「定義取得」
っていう機能を利用するといいですよ。

タンダコンピュータ/丹田 昌信
投票数:1 平均点:10.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-11-11 12:05
noukan  常連   投稿数: 44
丹田 昌信様 こんにちは。
回答ありがとうございました。
Magic の「定義取得」機能を利用して自動取込機能があることがわかりました。

その内容を修正し、APG機能で自動作成すると
DBエラーで
エラー内容は"EOS(データベースサーバ名)":'-'付近に不適切な構文が見られます。
これはSQLサーバ側の構文と考えて間違いないのでしょうか?
回答お願いしたいです。


投票数:1 平均点:10.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-11-11 18:35
Tanda  長老   投稿数: 2151
noukan さん、こんにちは。

その近辺に何か使えない文字とかが含まれているのではないでしょうか?

たとえば、「(」とか、「)」とかが使用されていると、SQL Server のネーミング
ルールでエラーになる場合があります。

「ネーミングルール」と言うのは名ばかりで、実際にはバグのような気も
しますが。。。

タンダコンピュータ/丹田 昌信
投票数:1 平均点:10.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-11-11 16:00
pu_mahalo  長老 居住地: 大阪  投稿数: 775
こんにちは Puです

SQLSERVER2005以降はユーザーとスキーマーが分離されています
dbo以外の所有テーブルを使用する場合は
明示的に指定してあげなければなりません。

以下 V9.4 Plusの説明書より抜粋
---------------------------------------------------------

1:MS SQL Server 2005のデータベースに、既存の dbo ユーザ以外にアプリケーションのためのユーザがあり、デフォルトスキーマが規定値のdboである。

2:Magic のデータベース特性/ユーザとして、このユーザが指定されている。

3:Magic のデータベース特性/存在チェックが Yes である。

4:アプリケーションのテーブルのテーブル特性/オーナ名が空欄である。

この問題を回避するには、テーブル特性/オーナ名 に、スキーマ名 dbo を明示的に指定してください。
----------------------------------------------------------
でわ〜でわ〜
投票数:1 平均点:10.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-11-14 16:04
noukan  常連   投稿数: 44
こんにちは noukanです

>SQLSERVER2005以降はユーザーとスキーマーが分離されています
>dbo以外の所有テーブルを使用する場合は
>明示的に指定してあげなければなりません。

ということで、jinji-admin.職員所属の場合は
テーブルのテーブル特性/オーナ名 に、スキーマ名:jinji-adminと登録したのですが、
オーナー名に'-'(ハイフン)がるため構文エラーとなりました。
これは命名規約に違反しているがためにエラーとなりはじかれたと考えます。

このような解釈をしたのですが、オーナー名に'-'(ハイフン)があっても"問題ない"という方がいましたらアドバイスください。

ちなみに、dbo.職員マスタの場合は
テーブルのテーブル特性/オーナ名 に、スキーマ名:dboと登録し、問題ありませんでした!
投票数:1 平均点:10.00
depth:
3
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-11-29 18:46
Tanda  長老   投稿数: 2151
noukan さん、こんにちは。

命名規則に違反する文字はすべてエラーになると思いますよ。

ただ、「命名規則」と言っても、どこが規則なの?っていう印象ですが。。。

タンダコンピュータ/丹田 昌信
投票数:1 平均点:10.00
depth:
1
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2011-12-22 15:45
Kurogane  常連   投稿数: 50
名前の前後に[]をつけたらどうでしょう?
投票数:1 平均点:10.00
depth:
2
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2011-12-26 17:31
Tanda  長老   投稿数: 2151
多分、ダメだと思いますよ。

タンダコンピュータ/丹田 昌信
投票数:1 平均点:10.00

  条件検索へ


Copyright (C) Magic Software Japan K.K. All Rights Reserved.
個人情報保護方針 会員規約