数据库的安装与远程连接
一、安装与进入MySQL:安装过程会让自己设置一个root的密码
sudo apt-get install mysql-server-5.7
mysql -u root -p
二、使用MySQL Workbench远程连接虚拟机中的MySQL,注意需要修改MySQL的配置文件,将配置文件中的 bind-address,将它的值改为0.0.0.0。还有由于root初始权限的问题,使用root身份是无法连接到虚拟机中的MySQL的,建议重新创建一个用户,命令如下
create user 'admin'@'%' identified by '123456'
简单的数据库建模与建库建表相关命令
DROP DATABASE XXXX; # 删除数据库XXXX
CREATE DATABASE XXXX; #创建数据库XXXX
SHOW DATABASES; #查看所有数据库
USE XXXX; #使用数据库XXXX
# 建立一张用户表
CREATE TABLE TBL_USER(
U_ID INT PRIMARY KEY AUTO_INCREMENT,
U_NAME VARCHAR(32),
U_GENGDER VARCHAR(8)
);
SHOW TABLES; #查看该数据库中的所有表
MySQL数据库编程链接、插入与删除数据
#include <mysql.h>
#include <stdio.h>
#define CHEN_DB_SERVER_IP "192.168.40.xxx"
#define CHEN_DB_SERVER_PORT 3306
#define CHEN_DB_USERNAME "admin"
#define CHEN_DB_PASSWORD "12345678"
#define CHEN_DB_DEFAULTDB "CHEN_DB"
#define SQL_INSERT_TBL_USER "INSERT TBL_USER(U_NAME, U_GENGDER) VALUES('NIhao', 'woman')"
#define SQL_SELECT_TBL_USER "SELECT * FROM TBL_USER;"
#define SQL_DELETE_TBL_USER "CALL PROC_DELETE_USER('NIhao');"
int main() {
// 创建一个MySQL连接对象
MYSQL mysql;
// 初始化一个MySQL连接对象
if(NULL == mysql_init(&mysql)){
printf("mysql_init : %s \n", mysql_error(&mysql));
return -1;
}
// 连接数据库,返回非零表示成功,返回零表示失败
if(!mysql_real_connect(&mysql, CHEN_DB_SERVER_IP, CHEN_DB_USERNAME, CHEN_DB_PASSWORD, CHEN_DB_DEFAULTDB, CHEN_DB_SERVER_PORT, NULL, 0)){
printf("mysql_real_connect : %s\n", mysql_error(&mysql));
return -2;
}
/// 插入数据, 成功返回零,失败返回非零
if(mysql_real_query(&mysql, SQL_INSERT_TBL_USER, strlen(SQL_INSERT_TBL_USER))){
printf("mysql_real_query : %s\n", mysql_error(&mysql));
}
// 删除数据, 成功返回零,失败返回非零
if(mysql_real_query(&mysql, SQL_DELETE_TBL_USER, strlen(SQL_DELETE_TBL_USER))){
printf("mysql_real_query : %s\n", mysql_error(&mysql));
}
printf("Data deleted successfully.\n");
// 关闭连接
mysql_close(conn);
return 0;
}