C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[5]: DBの値を変数に入れる方法


(過去ログ 68 を表示中)

[トピック内 9 記事 (1 - 9 表示)]  << 0 >>

■39483 / inTopicNo.1)  DBの値を変数に入れる方法
  
□投稿者/ もんた (4回)-(2009/08/09(Sun) 23:04:48)

分類:[ASP.NET (C#)] 

初歩的な質問で申し訳ないのですが、CSファイルでデータベースに接続した後でレコードの値を変数に入れるにはどうすればよいのでしょうか?
データベースに接続するまでは色々なHPに説明があるのですが、その後が分からなくなってしまいました。
MySQLを使用しています。
引用返信 編集キー/
■39490 / inTopicNo.2)  Re[1]: DBの値を変数に入れる方法
□投稿者/ やじゅ (1189回)-(2009/08/10(Mon) 00:24:32)
やじゅ さんの Web サイト
No39483 (もんた さん) に返信
> 初歩的な質問で申し訳ないのですが、CSファイルでデータベースに接続した後でレコードの値を変数に入れるにはどうすればよいのでしょうか?
> データベースに接続するまでは色々なHPに説明があるのですが、その後が分からなくなってしまいました。
> MySQLを使用しています。

ExecuteReader()とかあたりを理解されればいいんじゃないかな
http://netlog.jpn.org/r271-635/2007/10/aspnet_c_sql.html
引用返信 編集キー/
■39493 / inTopicNo.3)  Re[1]: DBの値を変数に入れる方法
□投稿者/ もりお (29回)-(2009/08/10(Mon) 01:37:32)
2009/08/10(Mon) 01:39:25 編集(投稿者)
No39483 (もんた さん) に返信
キーワードさえわかれば情報はたくさんありますので大雑把に。
ADO.NET におけるデータアクセスは接続型データアクセスと
非接続型データアクセスの大きく2つに分けられます。


接続型データアクセス
    int number;
    SqlConnection connection = new SqlConnection( ... );
    SqlCommand command = new SqlCommand("select * from node", connection);
    connection.Open();
    SqlDataReader reader = command.ExecuteReader();
    while (reader.Read())
    {
        number = reader.GetInt32(0);
    }
    reader.Close();
    connection.Close();

    ・読み出しが高速

       
非接続型データアクセス
    SqlConnection connection = new SqlConnection( ... );
    DataTable table = new DataTable();
    SqlDataAdapter adapter = new SqlDataAdapter("select * from node", connection);
    adapter.Fill(table);

    ・接続を切った状態でデータにアクセスできる

引用返信 編集キー/
■39497 / inTopicNo.4)  Re[1]: DBの値を変数に入れる方法
□投稿者/ はつね (1054回)-(2009/08/10(Mon) 09:01:24)
はつね さんの Web サイト
No39483 (もんた さん) に返信
> データベースに接続するまでは色々なHPに説明があるのですが、その後が分からなくなってしまいました。
> MySQLを使用しています。

http://architect360.apricot-jp.com/500tips/adonetmsql.html
引用返信 編集キー/
■39551 / inTopicNo.5)  Re[2]: DBの値を変数に入れる方法
□投稿者/ もんた (5回)-(2009/08/10(Mon) 22:19:43)
みなさんありがとうございます。
とりあえずコードを書いてみたのですが、何やら「(ユーザー名)はログインできませんでした。」というエラーが出てしまいます。
色々調べてセキュリティ構成やファイアウォールなどをいじってみたのですが、一向に直りません。
ユーザ偽装というものも試してみましたが駄目でした。
コードは以下の通りです。

String record;
String conn = "server=localhost\\SQLEXPRESS; database=MyDatabase.mdf; Integrated Security=SSPI;";

SqlConnection connection = new SqlConnection(conn);
SqlCommand command = new SqlCommand("SELECT * FROM Table1",connection);

connection.Open();

SqlDataReader reader = command.ExcuteReader();

While(reader.Read()){
     record = reader.GetString(0);
}

MessageBox.Show("SQLサーバーに接続されました。");

reader.Close();
connection.Close();


SQL Server 2005 での認証はWindows認証になっています。
自分でいくつかIDとパスを設定してみましたが、「信頼関係接続ではありません。」と出てしまいます。

間違っている場所の指摘やアドバイスを頂けるとありがたいです。

引用返信 編集キー/
■39556 / inTopicNo.6)  Re[3]: DBの値を変数に入れる方法
□投稿者/ もりお (31回)-(2009/08/10(Mon) 23:04:42)
No39551 (もんた さん) に返信
MySQL ではないのですか?
MySQL の利用例は、はつねさんのリンク先に載っているですよ。
引用返信 編集キー/
■39563 / inTopicNo.7)  Re[3]: DBの値を変数に入れる方法
□投稿者/ もりお (32回)-(2009/08/11(Tue) 01:48:14)
2009/08/11(Tue) 01:48:51 編集(投稿者)

No39551 (もんた さん) に返信
> みなさんありがとうございます。
> とりあえずコードを書いてみたのですが、何やら「(ユーザー名)はログインできませんでした。」というエラーが出てしまいます。
> 色々調べてセキュリティ構成やファイアウォールなどをいじってみたのですが、一向に直りません。
> ユーザ偽装というものも試してみましたが駄目でした。
> コードは以下の通りです。
>
> String record;
> String conn = "server=localhost\\SQLEXPRESS; database=MyDatabase.mdf; Integrated Security=SSPI;";

接続文字列が怪しい気がします。
サーバーエクスプローラーで接続を追加して
プロパティから接続文字列をコピペしてみてはいかがでしょうか。

引用返信 編集キー/
■39580 / inTopicNo.8)  Re[4]: DBの値を変数に入れる方法
□投稿者/ みきぬ (597回)-(2009/08/11(Tue) 10:13:26)
ちなみに、System.Data.SqlClient 名前空間は SQLServer 用です(その接続文字列も SQLServer のだし…)

Connector/NET で接続するなら(はつねさんが既にリンク貼られてますが)MySql.Data.dll を参照設定して MySql.Data.MySqlClient 名前空間にあるクラスを使ってください。

(こっちはあんまりお勧めしないけど)Connector/ODBC で接続するなら、System.Data.Odbc 名前空間にあるクラスを使ってください。
引用返信 編集キー/
■39727 / inTopicNo.9)  Re[5]: DBの値を変数に入れる方法
□投稿者/ もんた (6回)-(2009/08/12(Wed) 18:58:49)
2009/08/12(Wed) 18:59:04 編集(投稿者)

みなさんありがとうございます。
指摘された点を色々直したら無事接続ができました!
特にプロパティから接続文字列をコピーするというのは考えつきませんでした。
ありがとうございます。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -