Linux C MySQL数据库函数
1. 初始化一个连接句柄
MYSQL *mysql_init(MYSQL *);
正确:返回一个指向新分配的链接句柄结构的指针
错误:NULL
注:该函数的传入参数通常为NULL即可。
2. 建立物理连接
MYSQL *mysql_real_connect(MYSQL *connection,
const char *server_host,
const char *sql_user_name,
const char *sql_password,
const char *db_name,
unsigned int port_number,
const char *unix_socket_name,
unsigned int flags);
其中connection参数为通过mysql_init函数创建的句柄,server_host参数可为主机名或IP值,如果连到本机,我们仅仅只需指定“localhost”即可。sql_user_name和sql_password即为访问数据库的用户名和密码,如果sql_user_name为空,那么默认为当前Linux user的用户名,如果sql_password为空,那么只能访问不需要密码的数据。密码在经网络传输之前都经过加密处理。通常情况下,如果你没有改变MySQL的默认安装,port_number和*unix_socket_name的值分别为0和NULL即可,他们默认为当前相应值。flags参数允许我们改变当前使用协议的特性,默认情况下,置0即可。
如果连接不成功,该函数返回NULL
3. 断开连接
void mysql_close(MYSQL *connection);
使用该函数可以断开指定的链接。不让不需要的连接断开会浪费资源,但重新建立连接需要额外开销,在实际工作中我们可根据需要权衡。
4. 选项设置
int mysql_options(MYSQL *connection, enum option_to_set,
const char *argument);
该函数可用在mysql_init和mysql_real_connect之间来设置一些连接选项,option_to_set参数如MYSQL_OPT_CONNECT_TIMEOUT用来设置连接超时的时间(秒),MYSQL_OPT_COMPRESS表示在网络传输中对数据进行压缩,而MYSQL_INIT_COMMAND指定每当连接建立时用来发送的命令。
函数成功时返回0,因为该函数仅仅用来设置选项,所以失败意味着使用了无效的选项。此外,该函数每次只能设置一种选项,所以每设置一个选项就必须调用该函数一次。
举例:
unsigned int timeout = 7;
connection = mysql_init(NULL);
相关文档:
管理节点:192.168.50.211 数据节点: 192.168.50.214 数据节点: 192.168.50.215 SQL节点: 192.168.50.212 SQL节点: 192.168.50.213 操作系统:Red Hat Enterprise Linux AS release 5 ------------------------------------------安装前必读---------------------------------------- 当前文档的版本为mysql-cluster- ......
mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’; 权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部 ......
添加字段的格式
ALTER [ONLINE | OFFLINE] [IGNORE] TABLE tbl_name alter_specification [, alter_specification] ...alter_specification: table_option ... | ADD [COLUMN] col_name column_definition [FIRST | AFTER col_name ]
eg.
ALTER TABLE myTbl ADD COLUMN newItem VARCHAR(20) DEFAULT "0" ......
1.建表时就创建自增列:
create table test
(
id int auto_increment primary key,
name varchar(20) not null,
password varchar(20) not null
);
insert into test values(null,'aa','aa');
insert into test values(null,'bb','bb');
注意:
插入语句时,自 ......
废话不说了,直接进入主题,C# ODBC访问MySQL数据库:
1.安装Microsoft ODBC.net:我安装的是mysql-connector-odbc-3.51.22-win32.msi
2.安装MDAC 2.7或者更高版本:我安装的是mdac_typ.exe 2.7简体中文版
3.安装MySQL的ODBC驱动程序:我安装的是 odbc_net.msi
4.管理工具 -> 数据源ODBC –>配置DSN… ......