Red de conocimiento informático - Conocimiento de la instalación - Buscando un código relacionado con la interfaz de inicio de sesión de C# winform y la base de datos SQL

Buscando un código relacionado con la interfaz de inicio de sesión de C# winform y la base de datos SQL

Le daré un código sobre la conexión de la base de datos que resumí:

usando System.Data.OleDb;//Haga referencia primero al espacio de nombres

espacio de nombres DataReader1

{

clase parcial pública Formulario1: Formulario

{

Formulario público1()

{

InitializeComponent();

}

/*Nota especial: DataReader lee datos línea por línea La tabla DataReader es en realidad una tabla de datos de memoria Similar a DataSet*/.

private void Form1_Load(object sender, EventArgs e)

{

string connStr, selectCmd;//Define dos variables de cadena Se utiliza para almacenar caracteres de conexión y SQL códigos de comando respectivamente

connStr ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=SCOREDB.mdb";//Asigne un valor a la palabra de conexión que se utilizará para conectarse a la base de datos

selectCmd = "SELECT * FROM SCORE";//Asignar un valor a la sentencia SQL a ejecutar

OleDbConnection conn;//Definir el objeto de la clase de conexión

OleDbCommand cmd;//Crea un objeto de la clase comando

Lector OleDbDataReader;//Crea un objeto de la clase OleDbDataReader para leer datos

conn = new OleDbConnection(connStr) ;//Crea un nuevo objeto de conexión, es equivalente a prepararse para abrir la puerta con una llave, y connStr es equivalente a la clave

conn.Open();//Abre la conexión, la base de datos la puerta está abierta

cmd = new OleDbCommand(selectCmd , conn);//Asociar la "conexión" al comando SQL, de modo que la sentencia SQL a ejecutar quede asociada a la base de datos

lector = cmd.ExecuteReader();/*Ejecute la instrucción SQL y basándose en el resultado de la consulta devuelta (una tabla de datos) crea un objeto OleDbDataReader,

y lo asigna a la variable originalmente definida para almacenar el objeto En este momento, el lector es equivalente a una tabla,

y En este momento, solo los datos de la primera fila (es decir, la fila del encabezado) se pueden usar directamente*/

for (i = 0; i < lector.FieldCount; i++)/*Cuando i es menor que la tabla del lector El número de columnas (el valor de fieldcount es de base cero)

Cuándo, ejecute el código dentro de las llaves*/

{

txtShow.Text += lector.GetName(i) + "\t";//Obtenga el i-ésimo columna (nombre de la columna comenzando desde cero,

}

txtShow.Text += "\n\n";

while (reader.Read() ) /*Primero mueva las filas de datos en la tabla del lector que se pueden leer directamente hacia abajo una fila, para que la fila debajo del encabezado se pueda usar directamente, eso es todo

Siga bajando fila por fila hasta que el lector tabla Hasta que se agote la última fila*/

{

for (i = 0; i < lector.FieldCount; i++)//El valor de lector.fieldcount es igual a la columna del número de tabla del lector, pero al llamar a una determinada columna, la siguiente tabla comienza a contar desde cero

{

txtShow.Text += lector [i] + "\t ";//reader[i] se utiliza para obtener el valor de la i-ésima columna de la fila donde los datos se pueden leer directamente (i comienzo desde cero).

}

txtShow.Text += "\n";

}

lector.Close();//Cerrar DataReader Objeto, libera recursos, la tabla DataReader es en realidad una tabla de datos de memoria

conn.Close();//Desconecta la conexión de la base de datos

}

}< / p>

}

Resumen: cree objetos para las tres clases OleDbConnection, OleDbCommand y OleDbDataReader, porque estas tres clases deben usarse juntas para acceder a la base de datos

Otro método : Utilice DataSet y DataBaseAdapter para acceder a los datos en la tabla de datos

string connStr, selectCmd;

connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=SCOREDB .mdb ";

selectCmd = "Seleccionar * De SCORE";

OleDbConnection conn;

OleDbDataAdapter myAdapter;

DataSet myDataSet = nuevo DataSet ();//Crear un objeto DataSet vacío sin una tabla

conn = new OleDbConnection(connStr);

myAdapter = new OleDbDataAdapter(selectCmd, conn);

p >

myAdapter.Fill(myDataSet, "Transcript");

DataTable myDataTable = myDataSet.Tables["Transcript"];/*Para acceder a ciertos contenidos de la tabla, primero debe asignar la tabla en el DataSet a DataTable myDataTable*/

for (k = 0; k < myDataTable.Columns.Count; k++)//myDataTable.Columns.Count es el número de columnas en la tabla de datos

{

txtShow.Text += myDataTable.Columns[k].ColumnName + "\t";

}

txtShow.Text + = "\n";

para (i = 0; i < myDataTable.Rows.Count; i++)

{

para (j = 0 ; j < myDataTable.Columns.Count; j++)//El número de columnas de myDataTable.Columns.Count, comenzando desde 1

{

txtShow.Text += myDataTable.Rows[i][j] + "\t";//Equivalente a una matriz bidimensional

}

txtShow.Text += "\n";

Dos: use DataReader de SQL para leer la información de la base de datos

usando System.Data.SqlClient;//Cite el espacio de nombres primero

p>

// Comience a obtener la contraseña de la base de datos

string conString = @"server=localhost;database=nombre de la base de datos;Integrated Security=SSPI";

string selectCmd = "SELECT ID,PassWord FROM userInfo";

SqlConnection con = new SqlConnection(conString);

SqlCommand cmd;

Lector SqlDataReader;

con.Open();

cmd = new SqlCommand(selectCmd, con);

lector = cmd.ExecuteReader();

while ( lector.Read())

{

ID = lector.GetString(0);

Contraseña = lector.GetString(1);

}

lector.Close();

con.Close();

//Obteniendo la contraseña completa

Resumen : ¡Cree objetos para SqlConnection, SqlCommand y SqlDataReader porque se utilizan estas tres clases!

Tres: use DataSet para acceder a la base de datos

usando System.Data.OleDb; primero haga referencia al espacio de nombres

cadena connStr, selectCmd;//Defina dos cadenas Las variables se utilizan para almacenar caracteres de conexión y códigos de comando SQL respectivamente

DataSet myDataSet = new DataSet();//Crear un nuevo DataSet para almacenar tablas de datos en la memoria

OleDbConnection conn;/ /Definir conector

OleDbDataAdapter myAdapter;//Definir adaptador

connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DB.mdb";//Cadena de caracteres de conexión

conexión = ne

w OleDbConnection(connStr);/*Inicie la conexión, porque el adaptador abrirá y cerrará automáticamente la base de datos, así que no use las funciones de abrir y cerrar, pero aún necesita iniciar el paso de conexión*/

selectCmd = "Select * From SCORE";

myAdapter = new OleDbDataAdapter(selectCmd, conn);//Asocia la sentencia SQL con la "conexión", que es similar a la clase OleDbCommand

myAdapter.Fill(myDataSet, "Transcript"); // Complete los datos consultados por SQL en la tabla de datos "Transcript" en myDataSet

selectCmd = "Select * From STOCK";

myAdapter = new OleDbDataAdapter(selectCmd, conn);

myAdapter.Fill(myDataSet, "Stock Quote");

selectCmd = "Seleccionar * De LIBRO";

myAdapter = new OleDbDataAdapter(selectCmd, conn);

myAdapter.Fill(myDataSet, "Qifeng Books");// Un conjunto de datos tiene tres tablas de datos, a saber, "transcript", " Cotizaciones de acciones", "Libros Qifeng"

for (int i = 0; i < myDataSet.Tables.Count; i++)

{

cboTable.Items .Add(myDataSet.Tables[i].TableName);//Agrega el nombre de la tabla de datos al cuadro combinado

}

cboTable.Text = myDataSet .Tables[2 ].TableName;

dataGridView1.DataSource = myDataSet.Tables[2];/*Vincular dataGridView1 al DataSet. Una vez que dataGridView1.DataSource cambie, los datos mostrados en dataGridView cambiarán* /

private void btnSelect_Click(object sender, EventArgs e)

{

dataGridView1.DataSource = myDataSet.Tables[cboTable.Text];//se puede usar Use el nombre de la tabla para acceder a la tabla establecida en el DataSet

}

Para cambiar el nombre de la tabla en el DataSet, el código es el siguiente:

DataTableMapping changeName= nuevo DataTableMapping() ;

cambioNombre=mi

Adapter.tableMapping.Add ("Nombre de tabla original", "Nombre de tabla nueva");

Si no comprende, le sugiero que lea un libro y se lo presente, "Visual C# 2005 Guía de desarrollo completo》