mysql> desc aa;
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
+-------+---------+------+-----+---------+-------+
| xx | int(11) | YES | PRI | NULL | |
+-------+---------+------+-----+---------+-------+
| yy | int(11) | YES | UNI | NULL | |
+-------+---------+------+-----+---------+-------+
| zz | int(11) | YES | MUL | NULL | |
+-------+---------+------+-----+---------+-------+
1 row in set (0.00 sec)
[/PHP]
ÎÒÃÇ¿´µ½KeyÄÇÒ»À¸£¬¿ÉÄÜ»áÓÐ4ÖÖÖµ£¬¼´'ɶҲûÓÐ','PRI','UNI','MUL'
1. Èç¹ûKeyÊǿյÄ, ÄÇô¸ÃÁÐÖµµÄ¿ÉÒÔÖØ¸´, ±íʾ¸ÃÁÐûÓÐË÷Òý, »òÕßÊÇÒ»¸ö·ÇΨһµÄ¸´º ......
ÍøÉϺܶàVCÁ¬½ÓmysqlµÄÀý×Ó¶¼ÊÇÒª´ø¸ölibmysql.dll²ÅÄÜÕý³£Ê¹Óõġ£
µ«ÓÐʱÎÒÃDz¢²»Ïë¶à´ø¸ölibmysql.dll£¬Ö»Ïëµ¥Îļþ¾ÍÄÜʹÓûòÕßÄãÊÇÒª
·â×°ÔÚÒ»¸ödllÎļþÀÕâʱÄãÒª¾ÍÓõ½mysqlclient.libÕâ¸ö¾²Ì¬¿âÁË¡£
ʾÀý´úÂëÈçÏ£¬ºÜºÜ¼òµ¥£¬¾Í²»¶à˵ÁË¡£
Ïà¹ØµÄmysqlÍ·Îļþ¼°¾²Ì¬¿â£º
http://download.csdn.net/source/1047386
#include "stdafx.h"
#include <windows.h>
#include <winsock2.h>
#include "mysql\include\mysql.h"
//ºöÂÔLIBCMT.lib, MSVCRTD.libÕâЩ¿â£¬²»È»Á´½Óʱ»á±¨lnk2005´íÎó
#pragma comment(linker,"/nodefaultlib:LIBCMT.lib")
#pragma comment(linker,"/nodefaultlib:MSVCRTD.lib")
/*ÓÃmysqlclient.lib,²»ÒªÓÃlibmysql.lib,Òª²»ÄãÒª¶à´øÒ»¸ölibmysql.dll
¾²Ì¬¿âÓÐÁ½¸ö£¬Ò»¸öÊÇdebug°æµÄ£¬Ò»¸öÊÇrelease°æµÄ£¬Òª×¢Òâ
*/
#if defined _DEBUG
#pragma comment(lib, "mysqlclient_debug.lib")
#else
#pragma comment(lib, "mysqlclient.lib")
#endif
#pragma comment(lib, "wsock32.lib")
#pragma comment(lib, "Advapi32.lib")
int _tmain(int argc, _TCHAR* argv[])
{
MYSQL* mysql = NULL;
mysql = mysql ......
MySQLµÄ×Ö·û¼¯Ö§³Ö(Character Set Support)ÓÐÁ½¸ö·½Ã棺
×Ö·û¼¯(Character set)ºÍÁ¬½ÓУ¶Ô(Collation)¡£
¶ÔÓÚ×Ö·û¼¯µÄÖ§³Öϸ»¯µ½Ëĸö²ã´Î:
·þÎñÆ÷(server)£¬Êý¾Ý¿â(database)£¬Êý¾Ý±í(table)ºÍÁ¬½Ó(connection)¡£
1.MySQLĬÈÏ×Ö·û¼¯
MySQL¶ÔÓÚ×Ö·û¼¯µÄÖ¸¶¨¿ÉÒÔϸ»¯µ½Ò»¸öÊý¾Ý¿â£¬Ò»ÕÅ±í£¬Ò»ÁУ¬Ó¦¸ÃÓÃʲô×Ö·û¼¯¡£
µ«ÊÇ£¬´«Í³µÄ³ÌÐòÔÚ´´½¨Êý¾Ý¿âºÍÊý¾Ý±íʱ²¢Ã»ÓÐʹÓÃÄÇô¸´ÔÓµÄÅäÖã¬ËüÃÇÓõÄÊÇĬÈϵÄÅäÖã¬ÄÇô£¬Ä¬ÈϵÄÅäÖôӺζøÀ´ÄØ£¿
(1)±àÒëMySQL ʱ£¬Ö¸¶¨ÁËÒ»¸öĬÈϵÄ×Ö·û¼¯£¬Õâ¸ö×Ö·û¼¯ÊÇ latin1£»
(2)°²×°MySQL ʱ£¬¿ÉÒÔÔÚÅäÖÃÎļþ (my.ini) ÖÐÖ¸¶¨Ò»¸öĬÈϵĵÄ×Ö·û¼¯£¬Èç¹ûûָ¶¨£¬Õâ¸öÖµ¼Ì³Ð×Ô±àÒëʱָ¶¨µÄ£»
(3)Æô¶¯mysqld ʱ£¬¿ÉÒÔÔÚÃüÁîÐвÎÊýÖÐÖ¸¶¨Ò»¸öĬÈϵĵÄ×Ö·û¼¯£¬Èç¹ûûָ¶¨£¬Õâ¸öÖµ¼Ì³Ð×ÔÅäÖÃÎļþÖеÄÅäÖÃ,´Ëʱ character_set_server ±»É趨ΪÕâ¸öĬÈϵÄ×Ö·û¼¯£»
(4)µ±´´½¨Ò»¸öеÄÊý¾Ý¿âʱ£¬³ý·ÇÃ÷È·Ö¸¶¨£¬Õâ¸öÊý¾Ý¿âµÄ×Ö·û¼¯±»È±Ê¡É趨Ϊcharacter_set_server£»
(5)µ±Ñ¡¶¨ÁËÒ»¸öÊý¾Ý¿âʱ£¬characte ......
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.13 sec)
mysql> use test;
Database changed
mysql> show tables;
Empty set (0.00 sec)
mysql> delimiter $$
mysql> create procedure my_proc1(name varchar(50),out resultName varchar(50))
-> begin
-> set resultName=name;
-> end $$
Query OK, 0 rows affected (0.13 sec)
mysql> create procedure my_proc_if_else(count int,out result varchar(50))
-> begin
->   ......
MySQLµÄÿ¸öÊý¾Ý¿âĿ¼ÖÐÓÐÒ»¸öÎļþdb.opt,¸ÃÎļþÖ÷Òª ÓÃÀ´´æ´¢µ±Ç°Êý¾Ý¿âµÄĬÈÏ×Ö·û¼¯ºÍ×Ö·ûУÑ鹿Ôò¡£
eg.default-character-set=latin1
default-collation=latin1_swedish_ci
¸ÃÎļþÖд洢µÄÊÇ´´½¨Êý¾Ý¿âʱĬÈϵÄ×Ö·û¼¯ºÍ×Ö·û¼¯Ð£Ñ鹿Ôò£¬Ôò¸ÃÊý¾Ý¿âÔÚÒÔºó´´½¨±íʱÈç¹ûûÓÐÖ¸¶¨×Ö·û¼¯ºÍУÑ鹿Ôò£¬Ôò¸Ã±íµÄÕâÁ½¸öÊôÐÔ½«È¥×ÔÕâÁ½¸ö±í¡£
MySQLÔ´Â룺
/* Set table default charset, if not set
SYNOPSIS
set_table_default_charset()
create_info Table create information
DESCRIPTION
If the table character set was not given explicitely,
let’s fetch the database default character set and
apply it to the table. */
static void set_table_default_charset(THD *thd,
HA_CREATE_INFO *create_info, char *db)
{
if (!create_info->default_table_charset)
{
HA_CREATE_INFO db_info;
load_db_opt_by_name(thd, db, &db_info);
create_info->default_table_charset= db_info.default_table_charset;
}
´´½¨Êý¾Ý¿âʱָ¶¨×Ö·û¼¯ºÍ×Ö·û¼¯Ð£Ñ鹿Ôò£º
create database if not exists test default [cha ......
1.MemoryÒýÇæ,ÌṩÄÚ´æ±í
MySql Memory´æ´¢ÒýÇæ£¨Àϰ汾Ҳ½Ð×öheap´æ´¢ÒýÇæ£©£¬¹ËÃû˼ÒåÊÇÔÚÄÚ´æÖд洢ËùÓеÄÊý¾Ý£¬Ëü¾ßÓÐÒÔÏÂÁ½¸öÃ÷ÏÔÌØÕ÷£º
¢ÙÄÚ´æÖд洢Êý¾Ý£¬·Ç³£¸ßËÙ;
¢Úmysql¹Ø±ÕºóËùÓÐÊý¾ÝÏûʧ£¬mysqlÆô¶¯Ê±»á´´½¨¿Õ±í;
memory´æ´¢ÒýÇæÒ²ÊÇÒ»¸ö¾ø¼ÑµÄcache½â¾ö·½°¸£¬±¾Éíjdbc²Ù×÷¾ÍºÜÈÝÒ×±»java³ÌÐòÔ±½ÓÊÜ£»¶øÇÒ¿ÉÒÔ¶ÔÒÑÓеÄһЩ³ÌÐòÔÚ¼«ÉÙ¸Äд´ú
ÂëµÄÇé¿öÏÂÀ´Ìá¸ßÐÔÄÜ£¬ÀýÈç¶ÔһЩ³£ÓÃ×ÊÔ´µÄ²éѯÈçÊ¡ÊÐÐÅÏ¢£¬Èç¹ûÒÔÍùÊÇͨ¹ýÖ±½Ó²éѯÊý¾Ý£¬ÏÖÔÚ¸ÄΪ´ÓÄÚ´æ±íÖжÁÈ¡£¬¼¸ºõÊÇûÓÐ
ÈκθÄÔì³É±¾µÄ£»ÇÒmysqlµÄÒ×ÓÃÐÔÒ²ÃâÈ¥ÁË¶ÔÆäËûcache·þÎñÆ÷µÄѧϰ³É±¾¡£
×¢Ò⣺
µ±ÄÚ´æ±íÖеÄÊý¾Ý´óÓÚmax_heap_table_sizeÉ趨µÄÈÝÁ¿´óСʱ£¬mysql»áת»»³¬³öµÄÊý¾Ý´æ´¢µ½´ÅÅÌÉÏ£¬Òò´ËÕâÊÇÐÔÄܾʹó´òÕÛ¿Û
ÁË£¬ËùÒÔÎÒÃÇ»¹ÐèÒª¸ù¾ÝÎÒÃǵÄʵ¼ÊÇé¿öµ÷Õûmax_heap_table_size£¬ÀýÈçÔÚ.cnfÎļþÖÐ[mysqld]µÄÏÂÃæ¼ÓÈ룺
max_heap_table_size = 20 ......