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);
Ïà¹ØÎĵµ£º
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´úÌæ£¬±íʾ¸³ÓèÓû§È«²¿ ......
1. ¸ÅÊö
MySQLÊý¾Ý¿âµÄµ¼È룬ÓÐÁ½ÖÖ·½·¨£º
1) Ïȵ¼³öÊý¾Ý¿âSQL½Å±¾£¬ÔÙµ¼È룻
2) Ö±½Ó¿½±´Êý¾Ý¿âĿ¼ºÍÎļþ¡£
ÔÚ²»Í¬²Ù×÷ϵͳ»òMySQL°æ±¾Çé¿öÏ£¬Ö±½Ó¿½±´ÎļþµÄ·½·¨¿ÉÄÜ»áÓв»¼æÈݵÄÇé¿ö·¢Éú¡£
ËùÒÔÒ»°ãÍÆ¼öÓÃSQL½Å±¾ÐÎʽµ¼Èë¡£ÏÂÃæ·Ö±ð½éÉÜÁ½ÖÖ·½·¨¡£
Linux주
2. ·½·¨Ò» SQL½Å±¾ÐÎʽ
²Ù×÷²½ÖèÈçÏ£º
2 ......
1£º Can’t connect to [local] MySQL server´íÎó
Ò»¸öMySQL¿Í»§¿ÉÒÔÁ½ÖÖ²»Í¬µÄ·½Ê½Á¬½Ómysqld·þÎñÆ÷£ºUnixÌ×½Ó×Ö£¬Ëüͨ¹ýÔÚÎļþϵͳÖеÄÒ»¸öÎļþ(ȱʡ“/tmp /mysqld.sock”)½øÐÐÁ¬½Ó£»»òTCP/IP£¬Ëüͨ¹ýÒ»¸ö¶Ë¿ÚºÅÁ¬½Ó¡£UnixÌ×½Ó×Ö±ÈTCP/IP¸ü¿ì£¬µ«ÊÇÖ»ÓÐÓÃÔÚÁ¬½Óͬһ̨¼ÆËã»úÉϵķþÎñÆ÷¡£Èç¹ûÄ ......
¶Ô±ÈcharºÍvarcharËæ±ãÔÚgoogle»ò°Ù¶ÈÖÐËÑһϵõ½µÄ½áÂÛ´ó¸Å¶¼ÊÇ"char¶¨³¤,varchar²»¶¨³¤,charÒª±ÈvarcharÕ¼Óøü¶àµÄ¿Õ¼ä,ÓÉÓÚ¶¨³¤charµÄЧÂʸßÓÚvarchar,char×î´ó255,varchar×î´ó65536"¸ü¸ß¼¶Ò»µãµÄÊý¾ÝÊÇ"charÔÚ´æÈëºÍÈ¡³öµÄʱºò,»á×Ô¶¯°ÑĩβµÄ¿Õ¸ñÈ¥µô,varchar»á¶îÍâµÄ¶àÓÃ1-2¸ö×Ö½ÚÀ´´æ·Å×Ö·û³¤¶È,ÁÐÖÐÓÐÒ»¸övarchar» ......
ÎÄÕÂ×÷ÕߣºSlyar
ÏÈ¿´Á½¸ö´úÂ룬µÚÒ»¸öÊÇC³ÌÐò£¬µÚ¶þ¸öÊÇC++³ÌÐò£¬³ýÁËÍ·Îļþ²»Í¬ÒÔÍâÆäËûµÄ¶¼Ò»Ñù¡£
//demo.c
#include <stdio.h>
int foo();
int main()
{
int a;
foo(a);
return 0;
}
int foo(int a)
{
}//demo.cpp
#include <iostream>
int foo();
int main()
{
in ......