質問するログイン新規登録

質問編集履歴

7

2021/05/13 11:57

投稿

pofinpouty
pofinpouty

スコア20

title CHANGED
@@ -1,1 +1,1 @@
1
- 【C#】dategridviewで指定した行を削除し、それをAccessデータベース側にも反映させる方法
1
+ Accessデータベースの数値型を空文字で登録できない
body CHANGED
@@ -1,39 +1,4 @@
1
- ### 前提・実現したいこと
2
-
3
- C#でボタン押下時に、datagridviewで選択した行の削除行いたいのですが、datagridview上で削除はできますが、Accessデータベースに反映させる方法が分かりません。
4
-
5
- ### 発生している問題・エラーメッセージ
6
-
7
- 特になし
8
-
9
- ### 該当のソースコード
10
-
11
- ```C#
12
- ソースコード
13
-
14
- private void button1_Click(object sender, EventArgs e)
15
- {
16
- foreach (DataGridViewRow item in dataGridView1.SelectedRows)
17
- {
18
- if (!item.IsNewRow)
19
- {
20
- dataGridView1.Rows.Remove(item);
21
- }
22
- }
23
-   //oledb connectionなどの記述略
24
-   //SQL文の記述?
25
-   DELETE FROM テーブル名 = ???
26
-
27
- }
28
-
29
- ```
30
- ### 試したこと
31
-
32
- WHERE句にはdatagridviewの指定した行が入ると思い色々調べてみたのですがダメでした。
33
-
34
-
35
- ### 補足情報(FW/ツールのバージョンなど)
36
-
37
- visual studio 2019
1
+ visualstudioでC#の開発を行なっています。
2
+ ボタン押下時にテキストボックスの値をAccessデータベースに登録したいのですが、数値型のテキストボックスを空の状態で登録しようとするとエラーで落ちます。
3
+ 必須にはしておらず、文字型の場合は空文字でも登録できます。
38
- access2007 - 2013
4
+ Accessについての知識がなく、解決方法がわからないため教えてほしいです
39
- Windows10 32bit 64x

6

2021/05/13 11:57

投稿

pofinpouty
pofinpouty

スコア20

title CHANGED
File without changes
body CHANGED
@@ -20,7 +20,7 @@
20
20
  dataGridView1.Rows.Remove(item);
21
21
  }
22
22
  }
23
-
23
+   //oledb connectionなどの記述略
24
24
    //SQL文の記述?
25
25
    DELETE FROM テーブル名 = ???
26
26
 

5

2021/05/12 19:34

投稿

pofinpouty
pofinpouty

スコア20

title CHANGED
@@ -1,1 +1,1 @@
1
- 【C#】Accessデータベースから取得したデータを表示できない
1
+ 【C#】dategridviewで指定した行を削除し、それをAccessデータベース側にも反映させる方法
body CHANGED
@@ -1,6 +1,6 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- C#でAccessデーベースからテーブルを取得て表示したいのですが、エラも何もないの表示ません。
3
+ C#でン押下時に、datagridviewで選択した行の削除行たいのですが、datagridview上で削除はできますが、Accessデタベース反映せる方法が分かりません。
4
4
 
5
5
  ### 発生している問題・エラーメッセージ
6
6
 
@@ -11,67 +11,25 @@
11
11
  ```C#
12
12
  ソースコード
13
13
 
14
- using System;
15
- using System.Data;
16
- using System.Windows.Forms;
17
- using System.Data.OleDb;
18
- using System.Text;
19
- using System.ComponentModel;
20
-
21
- namespace TestDB
22
- {
23
- public partial class Search : Form
24
- {
25
-
26
- public Search()
27
- {
28
- InitializeComponent();
29
-
30
- }
31
-
32
- private void search()
33
- {
34
-
35
- }
36
-
37
14
  private void button1_Click(object sender, EventArgs e)
38
15
  {
16
+ foreach (DataGridViewRow item in dataGridView1.SelectedRows)
17
+ {
18
+ if (!item.IsNewRow)
19
+ {
20
+ dataGridView1.Rows.Remove(item);
21
+ }
22
+ }
39
23
 
40
- //データの取得
24
+   //SQL文記述?
41
- DataTable dt = new DataTable();
25
+   DELETE FROM テーブル名 = ???
42
- //接続文字列の設定
43
- string sConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Desktop\TestDB.accdb";
44
- //データソースへの接続を表す
45
- using (OleDbConnection conn = new OleDbConnection(sConn))
46
- {
47
- //dbに接続
48
- conn.Open();
49
26
 
50
- string sql = "SELECT * FROM MST_ADR";
51
- using(OdbcCommand cmd = new OdbcCommand(sql, conn))
52
- {
53
- using(OdbcDataAdapter adapter = new OdbcDataAdapter(cmd))
54
- {
55
- //データソース内の行と一致するようにDataSet 内の行を追加または更新。
56
- adapter.Fill(dt);
57
27
  }
58
- }
59
- //DataGridViewに表示する対象のデータを取得または設定。
60
- dataGridView1.DataSource = dt;
61
28
 
62
- }
63
- }
64
-
65
- }
66
-
67
- }
68
-
69
29
  ```
70
30
  ### 試したこと
71
31
 
72
- https://www.doraxdora.com/blog/2018/09/08/post-5965/
73
- このサイトを参考に作成しました。
74
- 接続文字列ついて自動生成をい、接続テストでOK出たので間違えていないと思のですが
32
+ WHERE句にはdatagridviewの指定した行が入ると思い色々調べてみたのですがダメでした。
75
33
 
76
34
 
77
35
  ### 補足情報(FW/ツールのバージョンなど)

4

2021/05/12 19:31

投稿

pofinpouty
pofinpouty

スコア20

title CHANGED
File without changes
body CHANGED
@@ -40,7 +40,7 @@
40
40
  //表のデータの取得
41
41
  DataTable dt = new DataTable();
42
42
  //接続文字列の設定
43
- string sConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\t.abe\Desktop\TestDB.accdb";
43
+ string sConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Desktop\TestDB.accdb";
44
44
  //データソースへの接続を表す
45
45
  using (OleDbConnection conn = new OleDbConnection(sConn))
46
46
  {

3

2021/05/10 19:38

投稿

pofinpouty
pofinpouty

スコア20

title CHANGED
File without changes
body CHANGED
@@ -67,7 +67,6 @@
67
67
  }
68
68
 
69
69
  ```
70
-
71
70
  ### 試したこと
72
71
 
73
72
  https://www.doraxdora.com/blog/2018/09/08/post-5965/

2

2021/05/10 19:36

投稿

pofinpouty
pofinpouty

スコア20

title CHANGED
File without changes
body CHANGED
@@ -10,7 +10,6 @@
10
10
 
11
11
  ```C#
12
12
  ソースコード
13
- ```
14
13
 
15
14
  using System;
16
15
  using System.Data;
@@ -21,54 +20,54 @@
21
20
 
22
21
  namespace TestDB
23
22
  {
24
- public partial class Search : Form
23
+ public partial class Search : Form
25
- {
24
+ {
26
-
27
25
 
28
- public Search()
26
+ public Search()
29
- {
27
+ {
30
- InitializeComponent();
28
+ InitializeComponent();
31
29
 
32
-
33
- }
30
+ }
34
31
 
35
- private void search()
32
+ private void search()
36
- {
33
+ {
37
-
38
- }
39
34
 
40
- private void button1_Click(object sender, EventArgs e)
41
- {
35
+ }
42
36
 
43
- //表のデータの取得
44
- DataTable dt = new DataTable();
45
- //接続文字列の設定
46
- string sConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\t.abe\Desktop\TestDB.accdb";
47
- //データソースへの接続を表す
48
- using (OleDbConnection conn = new OleDbConnection(sConn))
37
+ private void button1_Click(object sender, EventArgs e)
49
- {
38
+ {
50
- //dbに接続
51
- conn.Open();
52
39
 
40
+ //表のデータの取得
41
+ DataTable dt = new DataTable();
42
+ //接続文字列の設定
43
+ string sConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\t.abe\Desktop\TestDB.accdb";
44
+ //データソースへの接続を表す
45
+ using (OleDbConnection conn = new OleDbConnection(sConn))
46
+ {
47
+ //dbに接続
48
+ conn.Open();
49
+
53
- string sql = "SELECT * FROM MST_ADR";
50
+ string sql = "SELECT * FROM MST_ADR";
54
- using(OdbcCommand cmd = new OdbcCommand(sql, conn))
51
+ using(OdbcCommand cmd = new OdbcCommand(sql, conn))
55
- {
52
+ {
56
- using(OdbcDataAdapter adapter = new OdbcDataAdapter(cmd))
53
+ using(OdbcDataAdapter adapter = new OdbcDataAdapter(cmd))
57
- {
54
+ {
58
- //データソース内の行と一致するようにDataSet 内の行を追加または更新。
55
+ //データソース内の行と一致するようにDataSet 内の行を追加または更新。
59
- adapter.Fill(dt);
56
+ adapter.Fill(dt);
60
- }
61
- }
62
- //DataGridViewに表示する対象のデータを取得または設定。
63
- dataGridView1.DataSource = dt;
64
-
65
- }
66
- }
67
-
68
- }
69
-
70
57
  }
58
+ }
59
+ //DataGridViewに表示する対象のデータを取得または設定。
60
+ dataGridView1.DataSource = dt;
71
61
 
62
+ }
63
+ }
64
+
65
+ }
66
+
67
+ }
68
+
69
+ ```
70
+
72
71
  ### 試したこと
73
72
 
74
73
  https://www.doraxdora.com/blog/2018/09/08/post-5965/

1

2021/05/10 19:34

投稿

pofinpouty
pofinpouty

スコア20

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,83 @@
1
+ ### 前提・実現したいこと
2
+
1
- ~~windows~~```**``````> ここに言語入力
3
+ C#でAccessデータベースからテーブル取得して表示したいのですが、エラーも何もないのに表示されません。
4
+
5
+ ### 発生している問題・エラーメッセージ
6
+
7
+ 特になし
8
+
9
+ ### 該当のソースコード
10
+
11
+ ```C#
2
- ここに言語を入力
12
+ ソースコード
3
13
  ```
14
+
15
+ using System;
16
+ using System.Data;
17
+ using System.Windows.Forms;
18
+ using System.Data.OleDb;
19
+ using System.Text;
20
+ using System.ComponentModel;
21
+
22
+ namespace TestDB
4
- コード
23
+ {
24
+ public partial class Search : Form
25
+ {
26
+
27
+
28
+ public Search()
29
+ {
30
+ InitializeComponent();
31
+
32
+
33
+ }
34
+
35
+ private void search()
36
+ {
37
+
38
+ }
39
+
40
+ private void button1_Click(object sender, EventArgs e)
41
+ {
42
+
43
+ //表のデータの取得
44
+ DataTable dt = new DataTable();
45
+ //接続文字列の設定
46
+ string sConn = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\t.abe\Desktop\TestDB.accdb";
47
+ //データソースへの接続を表す
48
+ using (OleDbConnection conn = new OleDbConnection(sConn))
49
+ {
50
+ //dbに接続
51
+ conn.Open();
52
+
53
+ string sql = "SELECT * FROM MST_ADR";
54
+ using(OdbcCommand cmd = new OdbcCommand(sql, conn))
55
+ {
56
+ using(OdbcDataAdapter adapter = new OdbcDataAdapter(cmd))
57
+ {
58
+ //データソース内の行と一致するようにDataSet 内の行を追加または更新。
59
+ adapter.Fill(dt);
60
+ }
61
+ }
62
+ //DataGridViewに表示する対象のデータを取得または設定。
63
+ dataGridView1.DataSource = dt;
64
+
65
+ }
66
+ }
67
+
68
+ }
69
+
70
+ }
71
+
5
- ```__**
72
+ ### 試したこと
73
+
74
+ https://www.doraxdora.com/blog/2018/09/08/post-5965/
6
- コード
75
+ このサイトを参考に作成しました。
76
+ 接続文字列については自動生成を行い、接続テストでOKが出たので間違えていないと思うのですが…
77
+
78
+
79
+ ### 補足情報(FW/ツールのバージョンなど)
80
+
81
+ visual studio 2019
7
- ```
82
+ access2007 - 2013
83
+ Windows10 32bit 64x