В настоящее время я создаю приложение на C#. В этом приложении люди дают значения в метке и что значения будут сохранены в базе данных. Это также работает на данный момент. Я хочу следующее:пользовательский запрос для datagridview
Люди могут видеть свои собственные значения еще в datagridview. Если я сделаю это с помощью мастера datagridview, я не могу выбрать label2.Text (это идентификатор customerID).
Запрос я использовал ниже следующее:
SELECT * FROM prestaties WHERE gebruikerid = '" + label1.Text + "'";
Но это не работает. Я ничего не вижу в своем datagrid.
Извините за мой плохой английский. Надеюсь, ты меня поймешь.
ниже код у меня уже есть, но он не работает
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
namespace Eindopdracht
{
public partial class resultaten : Form
{
public resultaten()
{
InitializeComponent();
dataGridView1.Show();
}
private string username;
public void displaydata(String ddata)
{
OleDbConnection conn = new OleDbConnection(@"provider= microsoft.jet.oledb.4.0;data source=C:\\Users\\Jeffrey\\Desktop\\Eindopdracht WOE\\Eindopdracht\\sample.mdb");
string select = "SELECT * FROM prestaties WHERE gebruikerid = '" + label2.Text + "'";
conn.Open();
OleDbDataAdapter dataAdapter = new OleDbDataAdapter(select, conn);
DataSet ds = new DataSet();
dataAdapter.Fill(ds);
dataGridView1.DataSource = ds.tables[0];
conn.Close();
}
public void setUsername(String name)
{
username = name;
label1.Text = username;
setID();
}
public void setID()
{
OleDbConnection vcon = new OleDbConnection(@"provider= microsoft.jet.oledb.4.0;data source=C:\\Users\\Jeffrey\\Desktop\\Eindopdracht WOE\\Eindopdracht\\sample.mdb");
string selectie = "SELECT id FROM inlog WHERE Username='" + label1.Text + "'";
OleDbCommand vcom1 = new OleDbCommand(selectie, vcon);
vcon.Open();
vcom1.ExecuteNonQuery();
OleDbDataReader dr = null;
dr = vcom1.ExecuteReader();
while (dr.Read())
{
var waarde = dr.GetValue(0);
label2.Text = waarde.ToString();
}
Я отредактировал ваш заголовок. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –
Вы прокомментировали эту строку: '//dataGridView1.DataSource = ds.tables [0];'. Боковое примечание: SQL Injection, используйте параметры. Вместо запроса к базе данных вы можете использовать DataView. – LarsTech
Да, я прокомментировал это, потому что он не работает и с этой линией. – haassiej