![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
VBからODBCに登録するプログラムを作っています。
API関数のSQLConfigDataSourceを使っています。
ヘルプやネットで調べて、作成することはできました。
が、パスワードとユーザ名が登録していない状況での
ことです。
ここにもいくつかODBCに接続に関しての投稿を見ました。
パスワードとユーザ名指定しているサンプルやURL
なんかもあったのでいってみて、実際に自分のプログラムでも
試したのですがどうもうまくいきません。
SQLConfigDataSourceの引数のひとつである、ODBC_REMOVE_SYS_DSNと
ODBC_ADD_SYS_DSNを使いました。
ODBC_REMOVE_DSNとODBC_ADD_SYSを先に使ってみましたが
こちらもできませんでした。
なぜ"SYS"がつくものとつかないものふたつあるのでしょうか?
先に質問のパスワードとユーザー名指定して登録できないのは、
これと関係あるのでしょうか?
全くの初心者で申し訳ありませんが、よろしくお願いします。
No.5ベストアンサー
- 回答日時:
SQLさばについて
データベースのプロパティのセキュリティタブに認証方式がある
混合モード/Windows認証
これらはDBをSQLさばをインストールするときに選択を求められる
接続先のDBをおいているマシンにユーザ権限があって、しかもパスワードが同じなら、Windows認証が働いて、入れてしまう。
SQLさばは、誉れ高いMS商品
初期設定が初心者向きで扱い易い
しかしちょっとつつけば、すーぱゆーざ権限で入れるというセキュリティの弱さダントツを秘めた諸刃の剣
これを回避するにはWin認証を行わない。
ドメイン環境でActiveDirectoryを導入。
などのデフォルト設定以外の事をしないとだめズラ
勉強になりました。
現状では、パスワードとユーザ名は指定しないで追加することで進みました。
最後まで質問にお答えくださいましてありがとうございました。
No.4
- 回答日時:
現状ソースの公開求む
使用しているDBは何?
>Administratorででてきいました。
とは、「何が」できたの?
追加?それともログイン?
もしSQLさばを使っているなら、
ログイン認証はWindows認証?それとも混合モード?それともSQLで割り与えたユーザのみ?
この回答への補足
使用するAPI関数
Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" _
(ByValhwndParent As Long, _
ByVal fRequest As Long, _
ByVal lpszDriver As String, _
ByVal lpszAttributes As String)As Long
Private Const ODBC_ADD_SYS_DSN = 4
Private Const ODBC_REMOVE_SYS_DSN = 6
---------------------------------------------------------------------------
Private Function ODBCData()
Dim SqlODBC As Boolean
Dim Driver As String
Dim Attributes As String
Driver = "SQL Server"
Attributes = "DSN=データソース名"+ vbNullChar + _
"SERVER=サーバー名" + vbNullChar + __
"UID=ユーザ名" + vbNullChar + _
"PWD=パスワード+ vbNullChar + _
"DATABASE=データベース名" + vbNullChar
sqlODBC = SQLConfigDataSource(0, ODBC_REMOVE_SYS_DSN, Driver, Attributes)
wiRCode = SQLConfigDataSource(0, ODBC_ADD_SYS_DSN, Driver, Attributes)
End Function
こんな感じに書きました。
一応ネットでSQLConfigDataSourceの説明が載っているページを見てまねしました。
あと、ログイン認証は?とのことですが、すみません。わかりません。
もしかしてそれが重要だったりするんですか?
No.2
- 回答日時:
よく読むベシ
SYSがついたらシステムDNSに登録
そうでなければユーザDNS
ついでに言うなれば、システムDNSは、ログイン時の権限によっては操作不能
この回答への補足
ありがとうございました。
何度も同じページを読んでいましたが、読み飛ばしていたようです。すみませんでした。
SYSがつくものとつかないものの違いは分かりました。
では、なぜユーザー名とパスワードをつけると追加されないのでしょうか?
ちなみに、追加はされますがユーザ名とパスワードを指定していないので、Administratorででてきいました。
No.1
- 回答日時:
この回答への補足
すみません。
そのページはすでに読みました。
検索サイトでSQLConfigDataSourceにひっかがるページはほとんど行ったんですが、
まだ分からないので、ここに投稿させてもらいました・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) EXCELの外部データ取得ができない 1 2023/03/23 09:03
- その他(コンピューター・テクノロジー) 下に書いたの条件でgoogleアカウントの復旧方法等を教えてください。 1 2023/02/06 23:32
- Access(アクセス) Access DAOのExecuteメソッドのオプション(RecordsetOptionEnum)に 1 2022/09/19 07:34
- その他(クラウドサービス・オンラインストレージ) このような条件でデータを置いておけるサービス 3 2022/07/25 08:31
- Google Drive グーグルドライブの共有の設定がうまくできません 1 2022/11/28 00:44
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
- gooブログ Blogの使い方(ブログ・ユーザ設定について) 1 2022/04/23 12:40
- X(旧Twitter) 【至急】twitterを乗っ取られたのでしょうか? 1 2022/09/08 02:34
- ライフスタイル・ヘルスケア adidas runningというスマホアプリにログインできない?? 2 2023/03/17 21:39
- 政治 コロナ全数把握見直し、コロナアプリCOCOA、早くも役立たずですか? 2 2022/08/26 12:14
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
外部の別ホストからのPOST送信...
-
更新された情報を複数の人と共...
-
ユーザー認証が必要な投票がで...
-
BASIC認証について
-
Linuxからファイルのコピー
-
Excel VBA で Webからデータを...
-
ApacheのBasic認証のログの取り方
-
Basic認証のパスワードをユーザ...
-
google.co.jpはホスト名ですか?
-
グーグルで検索順位が上がると...
-
QA品質保証とはどういうもので...
-
ikeyとは何ですか?
-
JANコードを検索出来るサイト
-
「こんなサイトがあったら便利...
-
シンプルなSNMP Managerを探し...
-
Yahoo検索順位の暴落
-
Googleなどで自分のHPがひっか...
-
Amazonアソシエイトを利用した...
-
Yahoo!ビジネスエクスプレスに...
-
HPの相互リンクをすることのメ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ApacheのBasic認証のログの取り方
-
外部の別ホストからのPOST送信...
-
HTTPのBasic認証に自動ログイン...
-
Basic認証のパスワードをユーザ...
-
Basic認証
-
LinuxOSのユーザ・パスワードを...
-
年齢認証ページの作成を依頼さ...
-
BASIC認証
-
SQLConfigDataSourceについて。
-
Tomcatの基本認証が8080ポート...
-
電話の自動発信 返信記録プロ...
-
Linuxからファイルのコピー
-
web.configでフォーム認証でき...
-
ホームページ作成サイトで企業...
-
PHPの$_SERVER["REQUEST_URL"]...
-
CSVによるID,パスワードの一括登録
-
Amazon Product Advertising AP...
-
SEOスパムの基準について
-
会員投稿サイトのCMSについて
-
エクセルで備品管理
おすすめ情報