首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在游戏中mysql用到的内容

工具:NavicatforMySQL

工具:MySQL ODBC Connector

SQL语言对大小写敏感

数据库语言分为两部分:

(一).数据库操作语言(DML)

SELECT : 从数据库中获取数据

SELECT 列名称,... FROM 表名称

SELECT * FROM 表明

“*” 表示取所用列的快捷方式

UPDATE : 更新数据库中的数据

DELETE : 从数据库中删除数据

INSERT INTO : 想数据库中插入数据

(二).数据库定义语言(DDL)

CREATE DATABASE 创建新数据库

ALTER DATABASE 修改数据库

CREATE TABLE 创建新表

ALTER TABLE 变更,给变数据库表

DROP TABLE 删除表

CRATAE INDEX 创建索引(搜索键)

DROP INDEX 删除索引

1.SELECT : 从数据库中获取数据

SELECT 列名称,... FROM 表名称

SELECT * FROM 表明

“*” 表示取所用列的快捷方式

SELECT DISTINCT 列名称,... FROM 表名称

SELECT DISTINCT * FROM 表名称

DISTINCET 关键字 若果某列中有相同的值 只返回一个

WHERE 关键字 如果有条件的从数据表中选取数据,可selece语句中加入 WHERE

SELECT 列名 FROM 表名 WHERE 列名 运算符 值

SELECT * FROM 表名 WHERE 列名 运算符 值

“值”如果是 字符 要加 单引号 或 双引号, 数值 不用加

AND 和 OR 关键字

SELECT * FROD 表名 WHERE 列名 运算符 值 AND 列名 运算符 值

SELECT * FROD 表名 WHERE 列名 运算符 值 OR 列名 运算符 值

SELECT * FROD 表名 WHERE (列名 运算符 值 OR 列名 运算符 值) AND 列名 运算符 值

ORDER BY 关键字 根据制定的列对结果集进行排序 默认 升序

ASC 关键字 升序

DESC 关键字 降序

SELECT 列名,... FROD 表名 ORDER BY 列名,...

SELECT 列名,... FROD 表名 ORDER BY 列名 DESC, 列名 ASC

2.UPDATE : 修改数据库中的数据

UPDATE 表名 SET 列名 = 值, 列名 = 值,... WHERE 列名 = 某值

3.DELETE : 删除数据表中的某一行数据

DELETE FROM 表名 WHERE 列名 = 某值

DELETE FROM 表名 或 DELETE * FROM 表名 // 删除这个表的行

4.INSERT INTO : 想数据库中插入数据

INSERT INTO 表名 VALUES(值,值,...)

INSERT INTO 表名 (列名,列名,...) VALUES (值,值,...)

MySql C API 数据类型

MySql C API 函数

mysql_affected_rows()

返回上一次 update , delete, insert 查询更改, 删除, 插入的行号。

mysql_autocommit()

切换 autocommit( 自动提交) 模式 ON/off

mysql_change_user()

更改连接上的用户和数据库

mysql_charset_name()

获得连接的默认字符集的名称

mysql_close()

关闭服务器连接

mysql_commit()

提交事务

mysql_real_connect()

与运行在主机上的 mysql数据库服务器建立连接;

注意:

在执行所有有效的 mysql API 函数之前 必须 mysql_real_connect() 必须连接成功。

参数说明:

调用 mysql_real_connect() 之前必须调用 mysql_init()MYSQL 结构

MYSQL *mysql_real_connect(

MYSQL *mysql, // 创建的 MYSQL结构指针,必须用 mysql_init() 来初始化

const char *host, // 主机名或 ip地址, 如果为null ,或 localhost 说明连接的是本地主机。 如果 操作系统支持套接字(unix),或 命名管道(windows), 则使用它们,而不使用 tcp\ip连接

const char *user, // 主机的用户名,如果 user为null 或 “”, 说明用户名是当前用户, 在unix下,它是当前的用户名,在window下 是,必须指明 windows odbc 的当前用户名。

const char *passwd, // 主机用户名密码, 如果passwd 为null 或 “”, 则 会对用户列表 进行p匹配检查。 数据库管理员要对 ,输入的不同的密码,进行设置 mysql 不同的访问权限。

const char *db, // 数据库名称,如果 db 为null ,将会连接默认的数据库设为该值。

unsigned int port, //如果 port 不是0,其值将为tcp/ip 的端口号, 注意,host 的参数决定了连接类型

const char *unix_socket, // 如果unix_socket不为 null, 则 该字符描述应使用 套接字 或 命名管道连接, 注意,host决定了连接类型

unsigned long client_flag) // 游戏里通常为 0

游戏里使用:

if (!mysql_real_connect(&m_Mysql,Host, User, Password, Database,0,NULL,0))

{

Log( " +-Connect %s error:%s", Database, mysql_error(&m_Mysql));

return false;

}

mysql_close()

关闭前面打开的连接;

注意:

如果前面使用的 mysql_init() 或 mysql_real_connect() 自动分配的句柄,mysql_close()要解除这个分配的 mysql句柄

MYSQL m_Mysql;

mysql_init(&m_Mysql)

mysql_real_query()

执行查询的SQL语句;

注意:

正常执行一条SQL语句,而且末尾不加 “ ; ” 或 “ \g ” 。 或者执行多条 SQL语句 ,字符串可有分号隔开的多条语句;

int mysql_real_query(

MYSQL *mysql, //创建的 MYSQL 结构指针

const char *query, // SQL语句

unsigned long length) // SQL语句长度

如果返回 0 说明 查询成功,如果返回非0 说明 查询失败,

mysql_store_result()

使用了 查询SQL语句后,获得的成功结果集(MYSQL_RES)指针;

注意:

如果成功使用了(SELECT、SHOW、DESCRIBE、EXPLAIN、CHECK TABLE等),查询SQL语句后,必须调用 mysql_store_result(), 或者 mysql_use_result() ,对于其他查询SQL语句,可用可不用,使用了也不会导致性能降低,

如果查询语句未返回结果,返回null如 insert语句

如果读取结果失败,返回null,通过 sql_error()检查错误,或 mysql_field_count()是否返回0 检测;

如果返回的结果集不是null, 可以调用 mysql_num_rows() 获得结果集中行数,可调用 mysql_fecth_row() 获得结果集中行, 可调用mysql_row_seek() 和 mysql_row_tell() 来获得 或 设置 结果集中当前行位置;

一旦完成结果集的操作,必须调用 mysql_free_result();

mysql_fetch_fields()

对于结果集,返回所有MYSQl_FIELD 结构数组, 每一个结构提供了结果集中一列字段定义。

MYSQL_FIELD *mysql_fetch_fields(MYSQL_RES *result)

mysql_num_fields()

返回结果集中的行数;

mysql_fetch_row()

获得结果集中的下一行, 如果在mysql_store_result()之后使用, 如果没有检索到下一行, 则返回null, 如果在mysql_use_result()使用之后,没有检索到行或错误, 则返回 null;

mysql_escape_string()

mysql_real_escape_string()

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181221G0HKKY00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券
http://www.vxiaotou.com