欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL基础学习之基本命令行、c++ API

程序员文章站 2022-03-09 22:13:51
基本命令行 启动MySql:sudo service mysql start - 使用root登录:mysql -u 用户名 -p (-p表示密码登录) - 查看帮助:mys...

基本命令行

启动MySql:sudo service mysql start

- 使用root登录:mysql -u 用户名 -p (-p表示密码登录)

- 查看帮助:mysql> HELP 命令名;

- 查看用户权限:mysql> SHOW GRANTS;

- 注释:--单行注释 /*多行注释*/

- 取消正在输入的命令:\c

- 查看当前含有的数据库:SHOW DATABASES;

- 连接数据库:USE 数据库名;

- 查看当前数据库中含有的表:SHOW TABLES;

- 显示表属性:SHOW COLUMNS FROM 表名; 或 DESCRIBE 表名;

- 显示错误信息:SHOW ERRORS; 或 SHOW WARNINGS;

- 退出数据库:EXIT/QUIT;

- 新建数据库:CREATE DATABASE 数据库名;

- 新建表: create table 表名(name varchar(255),num int(10) );

- 查询数据表:select * from 表名;

c++ API

头文件#include "mysql.h" 配置.pro:LIBS += -lmysqlclient 常用函数

mysql_init() 获取或初始化MYSQL结构

mysql_real_connect() 连接到MySQL服务器。

mysql_query() 执行指定为“以Null终结的字符串”的SQL查询。

mysql_use_result() 初始化逐行的结果集检索。

mysql_field_count() 返回上次执行语句的结果集的列数。

mysql_fetch_row() 从结果集中获取下一行

mysql_num_fields() 返回结果集中的字段数

使用步骤

MYSQL iMySQL;//定义

mysql_init(&iMySQL);//初始化连接

piMySQLConnection = mysql_real_connect(&iMySQL, pHostname, pUser, pPassword, pDBName, 0, 0, 0);//建立连接

mysql_query();//执行查询语句

mysql_close(piMySQLConnection);//断开连接

常见错误:

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

原因分析:数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是匿名登录的

解决办法:在/etc/mysql/my.cnf的[mysqld]字段下加入skip-grant-tables,然后重启mysql

参考

MySql教程

MySql基本命令