ついこないだまでは、AccessからSQLサーバーへのテーブルリンクをしていたんですけど、貼りなおしをしようとしたら、リンクの種類とかすら何も選択出来ません!
どうして???

このQ&Aに関連する最新のQ&A

A 回答 (2件)

なんか、根が深そうな気が・・・^^;



問題を切り分けるため、テストして見てはいかがでしょうか。

1・ODBCでDNS設定を前と同じもので(名前を変えて)やってみる。
  
SQLServerの場合、ODBCを設定中に接続に行きますので、
そこで何らかのエラーが出た場合、それが原因です。
  
2・Accessで別のデータベースにODBC経由でリンクしてみる。
  (mdbでも他のSQLServerでも何でも可。)
これで接続できない場合、ODBCかAccessがトラぶってる可能性が高くなります。

3・Accessで別のデータベースにODBCを使わずにリンクしてみる。
  (mdbでいいと思います)
これで接続できない場合、Accessが駄目になってる可能性が高い。
私もKalen_Fさんもおっしゃるように、SQLServer側の原因のような気がしますが・・・^^;

>ほとんど知識が無いので、問題個所すら見つけられないんです(-_-;)
大丈夫です。みんなこういう痛い目にあって覚えていくんですから・・・
私も思い出すだけで・・・(T_T)イタタタ

この回答への補足

実は、ASPでsql文を使ってsqlサーバーに接続して、データをRecorfsetしたら、上手く値を取得できてるんですよ。
SQL文で接続出きている事と、リンクがはれるかどうか、っていう意味合いって違うのでしょうか?

補足日時:2001/09/22 01:25
    • good
    • 0
この回答へのお礼

まず、他のmdbへのリンクからテストしようとしたんですが、「テーブルのリンク」のウインドすら出てこなかったんで、ネットワークで繋いである他の機械から、同じ作業をしてみたら、そっちは上手くリンクはれたんです。

でも、はれない方の機械からのリンクが欲しいんで、まだ解決してないんですが、どうやら機械自体に問題がある事が分かったんで、調べていきます。
有難うございました! m(_ _)m

お礼日時:2001/09/23 09:25

すいません。

ちょっと状況がつかめないので質問させてください。

実行環境についての質問
同一マシン上でそのような現象が派生したのですか?
また、同一マシン上であるなら、そのマシンの環境を変更していませんか?
(何かをインストールしたり、ファイルを消したりとか・・・)
サーバー側で設定を変えていませんか?

エラー発生時に関する質問
1・アクセスで、テーブルの新規作成が選択できない。
2・テーブルの新規作成時に「テーブルのリンク」が選択できない。
3・「テーブルのリンク」時に「ファイルの種類」でODBCが選択できない。
4・ODBCを選択後、「データソースの選択」ができない。もしくは選択画面が表示できない。
5・使用すべきデータソースファイルがリストにない。
6・ファイル選択後、SQLServerにログインできない。
7・SQLServerのテーブル一覧が出てこない。
8・テーブルを選択後、リンクに失敗する
などなど。
エラーの発生状況により考えられる原因が違ってきますので、
どのように、どのタイミングでこの障害が発生したのか、教えていただけますか?
よろしくお願いします。

(原因が私にわかる範囲だとよいのですが・・・)

この回答への補足

2と3あたりのエラー内容になるんでけど、
リンクするウインドすら出ないんです...
こんな事になるのは、SQLサーバー側の権限の問題か何かかな、と思ったりするんですが、そもそも権限について、
ほとんど知識が無いので、問題個所すら見つけられないんです(-_-;)

補足日時:2001/09/21 19:33
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QSQLからACCESSテーブルへリンクではなく貼り付けたい

SQLのデータをACCESS経由でアクセスしているのですが、元のデータを変更させることがないように、ACCESS上に持ってきて編集したいのです。
コピーして、新しいmdbに貼り付けしてもリンク状態にて貼り付いてしまいます。
複写という形で、mdbに貼り付けする方法を教えてください。
表現が無茶苦茶ですが、宜しくお願い致します。

Aベストアンサー

#1のコメントではアドバイスとしてたらなかったでしょうか。
メニューバーで[ファイル]-[外部データの取り込み]-[インポート]の順でインポートのウィンドウがでるところまではOKでしょうか。
OKだとしたら、問題解決していそうなんですが。

Qリンクテーブルを CopyObject するとリンク情報がコピーされる

ACCESSでリンクしたテーブルを DoCmd.CopyObject でカレントのmdbにコピーすると、テーブル本体ではなく、リンク情報がコピーされてしまいます。
リンクされたテーブルの本体をコピーするにはどうすれば良いのでしょうか。
データ用のmdbとプログラム用のmdbを分けていて、プログラム側からテーブルをバックアップしたいので、このような方法をとっていますが、他に良い方法があれば教えてください。

Aベストアンサー

DAOを使用した方法ですが...
適当なフォームにコンボボックスとコマンドボタンを配置して下さい

下記コードによって、掲題の事は可能だと思われます
アレンジすれば、リンクテーブルの作成とかも可能です

※参照設定にて「Micorosoft DAO *.* Object Library」をチェックして下さい
'-------------------------------------------------
Private Sub Form_Open(Cancel As Integer)
  
  Dim Dbs     As DAO.Database
  Dim Tdf     As DAO.TableDef
  Dim strTbls   As String
  
  Set Dbs = CurrentDb
  
  'リンクテーブル一覧作成
  strTbls = ""
  For Each Tdf In Dbs.TableDefs
    If Left(Tdf.Name, 4) <> "MSys" And Tdf.Connect <> "" Then
      strTbls = strTbls & Tdf.Name & ";"
    End If
  Next
  
  Set Dbs = Nothing
  
  'コンボボックスにリンクテーブルを設定
  Me.cmbTableName.RowSourceType = "Value List"
  Me.cmbTableName.RowSource = strTbls
  
End Sub

Private Sub cmdInportTable_Click()
  
  Dim Dbs     As DAO.Database
  Dim Tdf     As DAO.TableDef
  Dim strSrcDbs  As String
  Dim strSrcTbl  As String
  Dim strCpyTbl  As String
  
  'テーブルが指定されなければ抜ける
  If IsNull(Me.cmbTableName.Value) = True Then Exit Sub
  
  '対象テーブル設定
  Set Dbs = CurrentDb
  Set Tdf = Dbs.TableDefs(Me.cmbTableName.Value)
  
  'リンク先DB、リンクテーブル、インポート後の名前指定
  strSrcDbs = Mid(Tdf.Connect, 11)
  strSrcTbl = Tdf.SourceTableName
  strCpyTbl = Tdf.SourceTableName
  
  '対象リンクテーブルをインポート
  Dbs.TableDefs.Refresh
  DoCmd.TransferDatabase _
          acImport, _
          "Microsoft Access", _
          strSrcDbs, _
          acTable, _
          strSrcTbl, _
          strCpyTbl
  
  '完了メッセージ
  MsgBox "[" & Tdf.Name & "] をインポートしました"
  
  Set Tdf = Nothing
  Set Dbs = Nothing
  
End Sub

DAOを使用した方法ですが...
適当なフォームにコンボボックスとコマンドボタンを配置して下さい

下記コードによって、掲題の事は可能だと思われます
アレンジすれば、リンクテーブルの作成とかも可能です

※参照設定にて「Micorosoft DAO *.* Object Library」をチェックして下さい
'-------------------------------------------------
Private Sub Form_Open(Cancel As Integer)
  
  Dim Dbs     As DAO.Database
  Dim Tdf     As DAO.TableDef
  Dim strTbls   As String
 ...続きを読む

QSQL文のテーブルについて

テーブルの列を後から加えていきたいのですが後ろから順番に加えるんじゃな

くて前にあった列の間に加えたりとかはできるのでしょうか?

そういったSQLがあればぜひお願いします。

Aベストアンサー

項目をテーブル中間位置に挿入(?)することは、多分できな
いのではないかと思います。(今度から、DBは何を使ってい
るのか書いてくださいね。)

再度、テーブルを作り直した方が確実かと思います。
テーブルの変更を行うと、フラグメンテーション等が発生する
のではなかったかと思います。(自信なし)

Qsql serverのテーブルレイアウトの印刷

現在、D/Bの設計を行っています。
sql server(7.0)でフイールド等の設定をしています。
その結果のテーブルレイアウトの印刷は、出来るのでしょうか。

また、文字型(chr、varchar、ncharなど)を設定する時、何を使用してよいのか分かりません教えて下さい。

Aベストアンサー

テーブルレイアウトの設定を見るには「クエリアナライザー」を使用します。
そして、コマンドに「sp_help *****」と打ち込んで実行します。(*****はテーブル名)
するとテーブルのフィールド情報からインデックス情報、ユーザー情報まで見る事ができます。その結果を印刷すれば大丈夫です。

QSQL Serverのテーブル移設方法

SQL Server超初心者です。
開発環境でテーブルを追加作成し、ユーザー側へもって行きたいのですが、簡単にテーブルを移行する手段ってありますか?
今までは1つや2つならユーザー先でテーブルを新規に作成して、CSVファイルで持っていったデータをインポートしていたのですが、今回大量に持っていくことになってしまい、何か簡単な方法はないか探しています。
開発環境とユーザー環境は別の場所でネットワークにつながっていない状態なので、簡単なメディアで持っていかなければなりません。
もしかしたらツールなどを使って簡単にできることなのかもしれませんが、基本的なことからわかっていないので詳しく教えていただければと思います。
よろしくお願いします。

Aベストアンサー

スクリプトにして持って行ったらいいです。

例.ローカルの「TEST」データベースをスクリプトに出力する方法

※1.SQL Server Enterprise Manager 起動

※2.ローカル(local)の「TEST」データベースまでたどりつく

※3.[ツール]→[SQLスクリプト生成]を選択

※4.ダイアログ内部の全て表示ボタンを押し、チェックボックスなどを駆使しながら、出力対象を選択

※5.ダイアログ内のオプションタブを選択し、「主キー、外部キー、デフォルトと・・・」にチェックを入れる。(そうしないと、プライマリーキーなどの情報が飛んでしまう)

※6.OKボタンを押し、出力先を指定する。



例.取り込む方法

SQLクエリアナライザで、作成されたスクリプトを実行するだけ


人気Q&Aランキング

おすすめ情報