Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo crear una base de datos de inicio de sesión de usuario para software escrito en VC?

¿Cómo crear una base de datos de inicio de sesión de usuario para software escrito en VC?

1) Abra "Opciones" en el menú "Herramientas" de la barra de herramientas VC6.0, seleccione "Mostrar directorios para:" de la lista desplegable en el lado derecho de la pestaña "Directorios" y seleccione "Incluir archivos", y luego agregue la ruta del directorio de inclusión de la instalación local de MySQL en el cuadro de lista del medio. (El mío es D:\Program Files\MySQL\MySQL Server 5.0\include). (2) En la lista desplegable "Mostrar directorios para:" mencionada anteriormente, seleccione "Archivos de biblioteca" y agregue la ruta al directorio Lib donde MySQL está instalado localmente. Hay dos directorios en el directorio Lib: debug y opt. Se recomienda elegir debug (el mío es D:\Program Files\MySQL\MySQL Server 5.0\lib\debug). (3) Agregue "libmysql.lib" en "Configuración del proyecto-gt; Enlace: Módulo Objeto/Biblioteca". (4) Agregue el siguiente contenido a stdafx.h: #include "mysql.h"

#include "winsock.h"// Si se produce un error de compilación, coloque esta línea en #include "mysql .h" antes.

#pragma comment(lib, "libmySQL.lib")//Si se ha agregado a las dependencias adicionales, no lo agregue nuevamente (5) Se recomienda copiar "libmySQL.lib, libmySQL .dll" en el directorio del proyecto que se está creando. MYSQL mysql; // identificador de conexión de la base de datos

mysql_init (amp;mysql);

if(!mysql_real_connect(amp;mysql, "localhost", "root", NULL, "mydb) ", 3306.NULL, 0)) {//mydb es la base de datos que creó, 3306 es el número de puerto, puede configurarlo usted mismo

AfxMessageBox("Error en la conexión de la base de datos");

devuelve FALSO;

}. 1) Implemente las funciones agregadas CString strUsername, strList, strRemark, strSQL;

strSQL.Format("insert into mytable").

Format("insert into mytable(username,visitelist,remark) value(\'s\',\'s\',\'s\')", strUsername, strList, strRemark //Tenga en cuenta que debe escribirse); en una línea y debe tener\'\'

if(mysql_real_query(amp;mysql,(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength())!GetLength())! 0){

AfxMessageBox("Error al agregar");

}

(2) Implementar la función de modificación CString strUsername, strList, strRemark, strSQL, str_PreName ; //str_PreName se utiliza para registrar las filas que se modificarán; consulte el código fuente para obtener más detalles

strSQL.Format("update mytable set nombre de usuario=\'s\', visitelist=\'s\ ', comentario=\ 's\' donde nombre de usuario=\'s\'", strUsername, strList, strRemark, str_PreName);

if(mysql_real_query(amp;mysql, (char*)(LPCTSTR) strSQL, (UINT) strSQL.GetLength())! =0){

AfxMessageBox("Error al modificar");

}(3) Ejecute la función de eliminación CString strSQL;

strSQL.Format("eliminar de mytable donde nombre de usuario=\'s\'", str_ PreName //debe tener \'\'

if(mysql_real_query(amp; mysql, (char*) (LPCTSTR)strSQL, (UINT)strSQL.GetLength())! = 0){

AfxMessageBox("Error en la eliminación"); ) Leer el contenido de la tabla en el control CListCtrl m_listm_list.DeleteAllItems();

char *ch_query

ch_query=" select * from mytable"

if( mysql_real_query(amp; mysql, ch_query, (UINT) strlen (ch_query))! = 0){

AfxMessageBox("Error con la tabla en la base de datos");

}

CString str

MYSQL_RES *resultado; ;

fila MYSQL_ROW;

if(!(result=mysql_use_result(amp;mysql))){

AfxMessageBox("Error al leer los datos

et");

}

int i=0;

while(row=mysql_fetch_row( resultado)){

str. Format("s", fila[0]);

m_list.InsertItem(i, str);

str.Format("s", fila[1]);

m_list.SetItemText(i, 1, str);

str.Format("s", fila[2]); , 2, str);

i;

}

mysql_free_result(resultado); (5) Cerrar la base de datos mysql_close(amp;mysql); most Es mejor escribir la función OnDestroy()

.