Linux 操作系统&MySQL 数据库APL函数

1 MYSQL 相关API函数

在使用API函数之前需要提前使用指令创建一个数据库

函数功能:链接一个数据库

函数头文件:

 <mysql/mysql.h>

链接库:

-lmysqlclient

函数的原型:

MYSQL *mysql_real_connect(
    MYSQL *mysql,
    const char *host,
    const char *user,
    const char *passwd,
    const char *db,
    unsigned int port,
    const char *unix_socket,
    unsigned long client_flag
    )

函数的参数:

mysql :它是Mysql核心结构体

需要你定一个该结构变量

然后调用mysql_init()进行初始化

举例:

方式1:

MYSQL  A;

mysql_init(&A);

方式2:

MYSQL *a = mysql_init(NULL);

host:  主机名,固定填写'localhost'本地主机

user:访问Mysql的用户  ---  "root"

passwd:访问Mysql的密码  --  "1"

db:你要访问的数据库  ---  对应的是数据库名字

port:0

unix_socket :NULL (没用链接网络)

client_flag:0

该函数的返回值:

如果失败返回NULL

如果成功返回的就是第一个参数

举例:

mysql *sql = mysql_init(NULL);//返回值就是初始化好的结构体指针
sql = mysql_real_connect(sql,“localhost”,”root”,”1”,”two_9206”,0,NULL,0);

2  关闭数据库链接

函数原型:

void mysql_close(MYSQL *mysql)

参数:

mysql:上面的核心结构体

3  mysql_query()

函数的功能:c语言执行数据库的SQL命令语法

函数的原型:

int mysql_query(MYSQL *mysql, const char *query)

函数的参数:

mysql:核心结构体

query:后面跟需要执行的SQL语句,具体的SQL语句参考。

Linux 操作系统&MySQL 数据库1

函数的返回值:

成功返回0,失败返回非0

使用顺序:

初始化数据库 MYSQL *sql = mysql_init();
连接数据库 sql = mysql_real_connect(sql,.....);
执行 mysql 的语法 int a = mysql_query(sql,”select * from ACC;”);
获取结果集合: MYSQL_RES *res = mysql_store_result(sql);

4 mysql_store_result函数

函数功能:

MYSQL_RES *mysql_store_result(MYSQL *mysql)

函数的参数:

mysql:就是执行完查询语句后的刚才核心的结构体

函数返回值:

返回值里面封装的就是我们要的结果集合!

这个集合一般需要借助外部的其他函数来获取结果

1-> int mysql_num_fields(MYSQL_RES * res)

        返回值就是结果集合的列数

        int  lie = mysql_num_fields(res);

2-> int mysql_num_rows(MYSQL_RES*res)

        返回值就是结果集合的行数(不包括列头);

        int hang = mysql_num_row(res);

3->char **mysql_fetch_row(MYSQL_RES *res)

        调用一次,获取结果集一行信息,如果查找到多行,要循环调用该函数

        指向失败;NULL或错误码

4-> MYSQL_FIELD *mysql_fetch_field(MYSQL_RES*res)

        获取一列的列头信息,该函数返回的结构体里面的name。就是我们要找的表头,但是该函数里面name是一个char * 类型,也就是说该函数调用一场,仅仅返回表头中的一列,想要看到整个表头,要一直往后获取,直到取到NULL

  • 35
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,以下是一个基于SSM框架的三层架构示例代码,用于获取调用API短信验证码并在HTML提交调用: 1. 实体类(Entity):创建一个名为`SmsCode`的实体类,用于表示短信验证码信息。 ```java public class SmsCode { private String code; // 构造函数、getter和setter方法省略 } ``` 2. 业务层(Service):创建一个名为`SmsService`的业务层接口和一个名为`SmsServiceImpl`的业务层实现类,用于处理获取短信验证码的逻辑。 ```java public interface SmsService { SmsCode getSmsCode(); } @Service public class SmsServiceImpl implements SmsService { @Override public SmsCode getSmsCode() { RestTemplate restTemplate = new RestTemplate(); String apiUrl = "your_api_endpoint"; // 替换为你的API地址 String code = restTemplate.getForObject(apiUrl, String.class); SmsCode smsCode = new SmsCode(); smsCode.setCode(code); return smsCode; } } ``` 3. 控制层(Controller):创建一个名为`SmsController`的控制器类,用于处理获取短信验证码的请求。 ```java @Controller public class SmsController { @Autowired private SmsService smsService; @RequestMapping("/getSmsCode") @ResponseBody public String getSmsCode() { SmsCode smsCode = smsService.getSmsCode(); return smsCode.getCode(); } } ``` 4. 视图层(View):创建一个名为`index.html`的HTML页面,用于提交调用获取短信验证码的请求。 ```html <!DOCTYPE html> <html> <head> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script> function getSMSCode() { $.get("/getSmsCode", function(response) { document.getElementById("smsCodeInput").value = response; }); } </script> </head> <body> <form> <!-- 其他表单元素 --> <input type="text" id="smsCodeInput" name="smsCode" placeholder="短信验证码"> <input type="button" value="获取验证码" onclick="getSMSCode()"> <input type="submit" value="提交"> </form> </body> </html> ``` 5. 数据库:根据实际需求,你可以在业务层中添加数据库相关的操作,如保存短信验证码信息等。 请注意,以上示例代码是一个基本的框架示例,你需要根据实际情况自行调整和完善。同时,确保在Spring配置文件中正确配置了相关的组件、URL映射和数据库连接信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值