﻿<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Xixi&#039;s Blog &#187; MySQL</title>
	<atom:link href="http://www.xixis.net/archives/tag/mysql/feed" rel="self" type="application/rss+xml" />
	<link>http://www.xixis.net</link>
	<description>http://www.xixis.net  &#124;  Eternal Sunshine of the Spotless Mind</description>
	<lastBuildDate>Thu, 12 Jan 2012 06:04:19 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>CentOS 5.3上yum安装Apache+php+Mysql+phpMyAdmin</title>
		<link>http://www.xixis.net/archives/centos-5-3-with-yum-install-apache-php-mysql-phpmyadmin.html</link>
		<comments>http://www.xixis.net/archives/centos-5-3-with-yum-install-apache-php-mysql-phpmyadmin.html#comments</comments>
		<pubDate>Thu, 25 Nov 2010 16:23:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[linux相关]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[phpMyAdmin]]></category>

		<guid isPermaLink="false">http://www.xixis.net/archives/centos-5-3%e4%b8%8ayum%e5%ae%89%e8%a3%85apachephpmysqlphpmyadmin.html</guid>
		<description><![CDATA[Centos 里的 yum 在线安装很慢.以下是替换为中国CentOS镜像服务器!    中国官方镜像网站: http://centos.ustc.edu.cn/      /* 使用说明 */     cd /etc/yum.repos.d [进入yum.repos.d目录]     mv CentOS-Base.repo&#160; CentOS-Base.repo.save [修改源文件名称备份]     wget http://centos.ustc.edu.cn/CentOS-Base.repo.5 [下载]     mv CentOS-Base.repo.5 CentOS-Base.repo [下载后的文件更名]
 

1. 更新系统内核到最新.    yum -y update     系统更新后,如果yum安装时提示错误信息,请执行以下命令修复.     rpm –import&#160; /etc/pki/rpm-gpg/RPM-GPG-KEY*
2. 安装Apahce, PHP, Mysql, 以及php连接mysql库组件
yum -y install httpd php mysql mysql-server php-mysql
//安装mysql扩展      yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql  ...]]></description>
			<content:encoded><![CDATA[<p>Centos 里的 yum 在线安装很慢.以下是替换为中国CentOS镜像服务器!    <br />中国官方镜像网站: <a href="http://centos.ustc.edu.cn/">http://centos.ustc.edu.cn/      <br /></a>/* 使用说明 */     <br />cd /etc/yum.repos.d [进入yum.repos.d目录]     <br />mv CentOS-Base.repo&#160; CentOS-Base.repo.save [修改源文件名称备份]     <br />wget http://centos.ustc.edu.cn/CentOS-Base.repo.5 [下载]     <br />mv CentOS-Base.repo.5 CentOS-Base.repo [下载后的文件更名]</p>
<p> <span id="more-624"></span>
</p>
<p>1. 更新系统内核到最新.    <br />yum -y update     <br />系统更新后,如果yum安装时提示错误信息,请执行以下命令修复.     <br />rpm –import&#160; /etc/pki/rpm-gpg/RPM-GPG-KEY*</p>
<p>2. 安装Apahce, PHP, Mysql, 以及<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/php" title="显示php的所有日志" target="_blank">php</a></span>连接mysql库组件</p>
<p>yum -y install httpd <span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/php" title="显示php的所有日志" target="_blank">php</a></span> mysql mysql-server <span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/php" title="显示php的所有日志" target="_blank">php</a></span>-mysql</p>
<p><em>//安装mysql扩展      <br /></em>yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql     <br /><em>//安装php的扩展</em>     <br />yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc     <br /><em>//安装apache扩展      <br /></em>yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql </p>
<p><strong></strong></p>
<p><strong>一次性粘贴安装: </strong></p>
<p> yum -y install httpd php mysql mysql-server php-mysql httpd-manual mod_ssl mod_perl mod_auth_mysql php-mcrypt php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc mysql-connector-odbc mysql-devel libdbi-dbd-mysql
</p>
</p>
<p>3. 启动服务配置</p>
<p>/sbin/chkconfig httpd on [设置apache为自启动]    <br />/sbin/chkconfig –-add mysqld [mysql服务]     <br />/sbin/chkconfig mysqld on [mysqld服务]</p>
<p>/sbin/service httpd start [自启动 httpd 服务]    <br />/sbin/service mysqld start [自启动mysqld服务]</p>
<p>4.设置mysql数据库root帐号密码。    <br />mysqladmin -u root password ‘新密码’ [引号内填密码]</p>
<p>让mysql数据库更安全</p>
<p>复制内容到剪贴板</p>
<p>代码:</p>
<p>mysql -u root -p [此时会要求你输入刚刚设置的密码，输入后回车即可</p>
<p>mysql&gt; DROP DATABASE test; [删除test数据库]</p>
<p>mysql&gt; DELETE FROM mysql.user WHERE user = ”; [删除匿名帐户]</p>
<p>mysql&gt; FLUSH PRIVILEGES; [重载权限]</p>
<p>5. 防火墙配置    <br />a.添加.允许访问端口{21: ftp, 80: http}.     <br />iptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT     <br />iptables -I RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT     <br />郁闷.请把上面复制到记事本里,然后把–state这段–改成小写的,再操作.否则粘贴时会出现乱码.     <br />b.关闭防火墙{不推荐}.     <br />service iptables stop     <br />c.重置加载防火墙     <br />service iptables restart</p>
<p>6. 安装<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/phpmyadmin" title="显示phpMyAdmin的所有日志" target="_blank">phpMyAdmin</a></span>    <br />进入<a href="http://www.phpmyadmin.net/">phpMyAdmin</a> 官方下载最新版本后，上传到你的网站目录下，然后进行配置。只需几步即可搞定。     <br />a. config.sample.inc.php更名为config.inc.php;     <br />b. 打开config.inc.php文件，进行以下修改;     <br />// $cfg['Servers'][$i]['controluser'] = ‘pma’;     <br />// $cfg['Servers'][$i]['controlpass'] = ‘pmapass’;     <br />// $cfg['Servers'][$i]['pmadb'] = ‘phpmyadmin’;     <br />// $cfg['Servers'][$i]['bookmarktable'] = ‘pma_bookmark’;     <br />// $cfg['Servers'][$i]['relation'] = ‘pma_relation’;     <br />// $cfg['Servers'][$i]['table_info'] = ‘pma_table_info’;     <br />// $cfg['Servers'][$i]['table_coords'] = ‘pma_table_coords’;     <br />// $cfg['Servers'][$i]['pdf_pages'] = ‘pma_pdf_pages’;     <br />// $cfg['Servers'][$i]['column_info'] = ‘pma_column_info’;     <br />// $cfg['Servers'][$i]['history'] = ‘pma_history’;     <br />// $cfg['Servers'][$i]['designer_coords'] = ‘pma_designer_coords’;</p>
<p>去掉每行前面的//;    <br />c.$cfg['blowfish_secret'] = ”; |修改为|&#160; $cfg['blowfish_secret'] = ‘http’;     <br />d.$cfg['Servers'][$i]['controluser'] = ‘pma’; |把’pma’修改为你的帐号|     <br />e.$cfg['Servers'][$i]['controlpass'] = ‘pmapass’;&#160; |把’pmapass设置为你的mysql登录密码|     <br />f. $cfg['blowfish_secret'] = ”; | 添加短语密码例如：$cfg['blowfish_secret'] = ‘onohot’|</p>
<p>参考网站：<a href="http://www.fengyihot.com/blog/?p=169">http://www.fengyihot.com/blog/?p=169</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.xixis.net/archives/centos-5-3-with-yum-install-apache-php-mysql-phpmyadmin.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>128m内存vps下nginx php-cgi mysql安装和优化</title>
		<link>http://www.xixis.net/archives/128m-memory-vps-under-nginx-php-cgi-mysql-installation-and-optimization.html</link>
		<comments>http://www.xixis.net/archives/128m-memory-vps-under-nginx-php-cgi-mysql-installation-and-optimization.html#comments</comments>
		<pubDate>Mon, 05 Jul 2010 12:46:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[linux相关]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[vps]]></category>

		<guid isPermaLink="false">http://www.xixis.net/archives/128m%e5%86%85%e5%ad%98vps%e4%b8%8bnginx-php-cgi-mysql%e5%ae%89%e8%a3%85%e5%92%8c%e4%bc%98%e5%8c%96.html</guid>
		<description><![CDATA[选取CentOS，因为它是号称最安全及性能都相对较好的Linux系统。系统内存128m，系统用掉30m，有100m左右可用（如图1所示），swap已经有256M，硬盘为5G，除去系统后大约有4G可供捣腾。
 

    图1。
首先，在空白的系统上使用下面的命令，安装gcc等一堆工具和后面php会用到的一些包：
yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
yum这一堆东西会有点慢，这里正好插播一下，mysql的编译在128的内存下非常慢，所以呆会儿我们会采取直接yum，php、nginx都下源码编译，经过以往的经验eAccelerator、Xcache和Zend Optimizer这三者，最好是用eAccelerator搭配Zend Optimizer能给php加速得到最佳效果，当然了，Zend Optimizer需要Zend Guard来搭配，而后者是收费的，伟大的中国人有伟大的破解。
我执行的时候耗时32分钟左右。
言归正传，继续：   wget http://sysoev.ru/nginx/nginx-0.7.61.tar.gz    wget http://www.php.net/get/php-5.2.10.tar.gz/from/this/mirror    wget http://blog.s135.com/soft/linux/nginx_php/phpfpm/php-5.2.10-fpm-0.5.11.diff.gz    wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2    wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.9.tar.gz [nginx rewrite使用]
【安装MySQL】   yum install -y mysql-server    启动MySQL:    service mysqld start ...]]></description>
			<content:encoded><![CDATA[<p>选取CentOS，因为它是号称最安全及性能都相对较好的Linux系统。系统内存128m，系统用掉30m，有100m左右可用（如图1所示），swap已经有256M，硬盘为5G，除去系统后大约有4G可供捣腾。</p>
<p> <span id="more-589"></span>
</p>
<p><a href="http://www.54chen.com/wp-content/uploads/2009/08/1.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="图1" border="0" alt="clip_image002" src="http://sub.xixis.net/wp-content/uploads/2010/07/clip_image0022.jpg" width="504" height="88" /></a>    <br />图1。</p>
<p>首先，在空白的系统上使用下面的命令，安装gcc等一堆工具和后面<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/php" title="显示php的所有日志" target="_blank">php</a></span>会用到的一些包：</p>
<p><code>yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers</code></p>
<p>yum这一堆东西会有点慢，这里正好插播一下，mysql的编译在128的内存下非常慢，所以呆会儿我们会采取直接yum，<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/php" title="显示php的所有日志" target="_blank">php</a></span>、<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/nginx" title="显示nginx的所有日志" target="_blank">nginx</a></span>都下源码编译，经过以往的经验eAccelerator、Xcache和Zend Optimizer这三者，最好是用eAccelerator搭配Zend Optimizer能给<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/php" title="显示php的所有日志" target="_blank">php</a></span>加速得到最佳效果，当然了，Zend Optimizer需要Zend Guard来搭配，而后者是收费的，伟大的中国人有伟大的破解。</p>
<p>我执行的时候耗时32分钟左右。</p>
<p>言归正传，继续：   <br /><code>wget http://sysoev.ru/<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/nginx" title="显示nginx的所有日志" target="_blank">nginx</a></span>/nginx-0.7.61.tar.gz</code>    <br /><code>wget http://www.php.net/get/php-5.2.10.tar.gz/from/this/mirror</code>    <br /><code>wget http://blog.s135.com/soft/<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/linux" title="显示linux的所有日志" target="_blank">linux</a></span>/nginx_php/phpfpm/php-5.2.10-fpm-0.5.11.diff.gz</code>    <br /><code>wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2</code>    <br /><code>wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.9.tar.gz [nginx rewrite</code><code>使用]</code></p>
<p>【安装<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/mysql" title="显示MySQL的所有日志" target="_blank">MySQL</a></span>】   <br /><code>yum install -y mysql-server</code>    <br /><code>启动<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/mysql" title="显示MySQL的所有日志" target="_blank">MySQL</a></span>:</code>    <br /><code>service mysqld start</code>    <br /><code>设置mysql数据库root帐号密码:</code>    <br /><code>mysqladmin -u root password 'newpassword' [</code><code>引号内填密码]</code>    <br /><code>让mysql更安全：</code>    <br /><code>mysql -u root -p [</code><code>此时会要求你输入刚刚设置的密码，输入后回车即可]</code></p>
<p>mysql&gt; DROP DATABASE test; [删除test数据库]   <br />mysql&gt; DELETE FROM mysql.user WHERE user = ”; [删除匿名帐户]    <br />mysql&gt;DELETE FROM mysql.user WHERE password = ”;[删除无密码帐户]    <br />mysql&gt; FLUSH PRIVILEGES; [重载权限]</p>
<p>【优化MySQL】   <br />此时的mysql直接吃掉20m左右的内存，如图2所示。我们要对其进行优化，关掉innodb。</p>
<p><a href="http://www.54chen.com/wp-content/uploads/2009/08/2.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="图2" border="0" alt="clip_image004" src="http://sub.xixis.net/wp-content/uploads/2010/07/clip_image0041.jpg" width="504" height="180" /></a>图2。</p>
<p>vi /etc/my.cnf   <br />在后面增加如下内容：</p>
<p><code>skip-innodb</code>    <br /><code>[mysql]</code>    <br /><code>no-auto-rehash</code></p>
<p>[mysqld]   <br />user = mysql    <br />port = 3306    <br />open_files_limit = 600    <br />back_log = 20    <br />max_connections = 100    <br />max_connect_errors = 200    <br />table_cache = 60    <br />external-locking = FALSE    <br />max_allowed_packet = 16M    <br />sort_buffer_size = 128K    <br />join_buffer_size = 128K    <br />thread_cache_size = 10    <br />thread_concurrency = 8    <br />query_cache_size = 0M    <br />query_cache_limit = 2M    <br />query_cache_min_res_unit = 2k    <br />default_table_type = MyISAM    <br />thread_stack = 192K    <br />transaction_isolation = READ-UNCOMMITTED    <br />tmp_table_size = 512K    <br />max_heap_table_size = 32M    <br />long_query_time = 1    <br />log_long_format    <br />server-id = 1    <br />binlog_cache_size = 2M    <br />max_binlog_cache_size = 4M    <br />max_binlog_size = 512M    <br />expire_logs_days = 7    <br />key_buffer_size = 4M    <br />read_buffer_size = 1M    <br />read_rnd_buffer_size = 2M    <br />bulk_insert_buffer_size = 2M    <br />myisam_sort_buffer_size = 4M    <br />myisam_max_sort_file_size = 10G    <br />myisam_max_extra_sort_file_size = 10G    <br />myisam_repair_threads = 1    <br />myisam_recover</p>
<p>[mysqldump]   <br />quick    <br />max_allowed_packet = 16M</p>
<p>【重启MySQL】   <br />service mysqld restart    <br />再看mysql吃掉的内存，已经降低了四分之一，如图3所示：    <br /><a href="http://www.54chen.com/wp-content/uploads/2009/08/3.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="图3" border="0" alt="clip_image006" src="http://sub.xixis.net/wp-content/uploads/2010/07/clip_image0061.jpg" width="504" height="180" /></a>图3。</p>
<p>【安装php】   <br />首先使用yum安装上mysql的开发包，供php扩展mysql使用：    <br /><code>yum -y install mysql-devel</code>    <br /><code>安装patch工具：</code>    <br /><code>yum -y install patch</code>    <br /><code>tar zxvf php-5.2.10.tar.gz</code>    <br /><code>gzip -cd php-5.2.10-fpm-0.5.11.diff.gz | patch -d php-5.2.10 -p1</code>    <br /><code>cd php-5.2.10</code>    <br /><code>./configure --prefix=/opt/php --with-config-file-path=/opt/php/etc --with-mysql=/usr/share/mysql --with-mysqli=/usr/bin/mysql_config --with-iconv-dir=/usr/local --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-discard-path --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-fpm --enable-force-cgi-redirect --enable-mbstring --with-gd --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --without-pear</code>    <br /><code>make &amp;&amp; make install</code>    <br />把pear手动装上(这个是5.2.10的一个bug，后面可能已经打补丁了)：    <br />curl http://pear.php.net/go-pear | /opt/php/bin/php    <br />cp php.ini-dist /opt/php/etc/php.ini</p>
<p>【安装eaccelerator】   <br /><code>tar jxvf eaccelerator-0.9.5.3.tar.bz2</code>    <br /><code>cd eaccelerator-0.9.5.3</code>    <br /><code>/opt/php/bin/phpize</code>    <br /><code>./configure --enable-eaccelerator=shared --with-php-config=/opt/php/bin/php-config</code>    <br /><code>make &amp;&amp; make install</code>    <br />mkdir -p /opt/eaccelerator_cache    <br />vi /opt/php/etc/php.ini</p>
<p>添加下面的内容：   <br /><code>[eaccelerator]</code>    <br /><code>zend_extension=”/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so”</code>    <br /><code>eaccelerator.shm_size=”64″</code>    <br /><code>eaccelerator.cache_dir=”/usr/local/webserver/eaccelerator_cache”</code>    <br /><code>eaccelerator.enable=”1″</code>    <br /><code>eaccelerator.optimizer=”1″</code>    <br /><code>eaccelerator.check_mtime=”1″</code>    <br /><code>eaccelerator.debug=”0″</code>    <br /><code>eaccelerator.filter=”&quot;</code>    <br /><code>eaccelerator.shm_max=”0″</code>    <br /><code>eaccelerator.shm_ttl=”3600″</code>    <br /><code>eaccelerator.shm_prune_period=”3600″</code>    <br /><code>eaccelerator.shm_only=”0″</code>    <br /><code>eaccelerator.compress=”1″</code>    <br /><code>eaccelerator.compress_level=”9″</code></p>
<p>【安装<a href="http://www.54chen.com/157-php%e4%bb%a3%e7%a0%81%e7%9a%84%e4%bc%98%e4%b8%8e%e5%8a%a3/">Zend</a> Optimizer】    <br />要去zend.com上注册用户名后进download页面下载，这里太弱智了，不知道zend是否有专门的产品人员，这种注册下载有什么意义，只是一堆死账号而已。    <br />下载ZendOptimizer-3.3.3-<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/linux" title="显示linux的所有日志" target="_blank">linux</a></span>-glibc23-i386.tar.gz    <br /><code>tar -zxvf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz</code>    <br /><code>cd ZendOptimizer-3.3.3-linux-glibc23-i386</code>    <br /><code>./install</code></p>
<p>运行过程中会要求你写些安装路径啥的，照着写就是。   <br />如果出现类似下面的错误：    <br />./install-tty: line 139: ./php: cannot execute binary file    <br />那说明你下错了包了，这种情况是因为你32位的系统下了64位的包或者是反过来。</p>
<p>【安装nginx】   <br /><code>tar -zxvf pcre-7.9.tar.gz</code>    <br /><code>cd pcre-7.9</code>    <br /><code>./configure</code>    <br /><code>make &amp;&amp; make install</code>    <br /><code>cd ..</code></p>
<p>tar zxvf nginx-0.7.61.tar.gz   <br />cd nginx-0.7.61    <br />./configure –user=www –group=www –prefix=/opt/nginx –with-http_stub_status_module –with-http_ssl_module    <br />make &amp;&amp; make install</p>
<p>增加www用户：   <br />groupadd www    <br />useradd -g www www</p>
<p>【优化php\nginx】   <br />1.优化php-fpm.conf    <br /><code>vi /opt/php/etc/php-fpm.conf</code>    <br /><code>修改log level为error:</code>    <br /><code>error</code>    <br /><code>修改max_children:</code>    <br /><code>5</code>    <br /><code>修改listen_address为unix socket方式运行：</code>    <br /><code>/tmp/php-cgi.sock</code></p>
<p>2.优化nginx.conf   <br />vi /opt/nginx/conf/nginx.conf    <br />在events中增加：    <br /><code>use epoll;</code>    <br /><code>在http中增加下面的代码，打开gzip：</code>    <br /><code>gzip on;</code>    <br /><code>gzip_min_length 1k;</code>    <br /><code>gzip_buffers 4 16k;</code>    <br /><code>gzip_http_version 1.0;</code>    <br /><code>gzip_comp_level 2;</code>    <br /><code>gzip_types text/plain application/x-javascript text/css application/xml;</code>    <br /><code>gzip_vary on;</code>    <br /><code>在使用php的server中使用unix socket通信方式：</code>    <br /><code>fastcgi_pass unix:/tmp/php-cgi.sock;</code></p>
<p>【设置开机启动】   <br />/sbin/chkconfig –add mysqld [在服务清单中添加mysql服务]    <br />/sbin/chkconfig mysqld on [设置mysql服务开机启动]</p>
<p>vi /etc/rc.locale   <br />加入两行：    <br />/opt/php/sbin/php-fpm start    <br />/opt/nginx/sbin/nginx</p>
<p>【误区提示】   <br />XEN更像物理服务器，会尽量把剩余的内存当成buffer和cache，所以看到下图的时候不要惊慌，其实内存都在cache里了。    <br /><a href="http://www.54chen.com/wp-content/uploads/2009/08/x.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="图4" border="0" alt="clip_image008" src="http://sub.xixis.net/wp-content/uploads/2010/07/clip_image008.jpg" width="504" height="104" /></a>图4</p>
<p>【wordpress专项优化】   <br />使用wp-super-cache插件，将页面生成html，省去php的开销，性能有提升。    <br />对照access log，刷新页面，看堵在什么地方</p>
<p>【几个建议】   <br />合并css js个数 并且压缩 速度提升明显    <br />wordpress没有任何插件的时候，效率是很不错的，但是有些不负责任的插件会导致整体看起来很慢，下面是一些常用的插件的问题：    <br />1.twitter tools插件：用来从后端取twitter数据的，这个插件搞了一个js一个css在head里，并且都是通过php生成的，两个php请求，让首页很慢。建议去掉（可能会影响自动化？没来得及分析细节）。    <br />2.wp-spamfree插件：用来做antispam的，这是一个动态生成的js，不知道为什么非常慢。建议换别的插件。</p>
<p>【结果展示】   <br />在完成上述一系列的操作后，http://54chen.com 我是陈科学院的打开速度已经非常迅速了，基本上一秒钟就能全部显示。内存还有40m空闲，如图5所示：    <br /><a href="http://www.54chen.com/wp-content/uploads/2009/08/5.jpg"><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="图5" border="0" alt="clip_image010" src="http://sub.xixis.net/wp-content/uploads/2010/07/clip_image010.jpg" width="504" height="90" /></a>图5</p>
<p>转载自<a href="http://www.54chen.com">五四陈科学院</a>[<a href="http://www.54chen.com">http://www.54chen.com</a>] </p>
]]></content:encoded>
			<wfw:commentRss>http://www.xixis.net/archives/128m-memory-vps-under-nginx-php-cgi-mysql-installation-and-optimization.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MySQL乱码问题总结</title>
		<link>http://www.xixis.net/archives/mysql-garbled-issue-summary.html</link>
		<comments>http://www.xixis.net/archives/mysql-garbled-issue-summary.html#comments</comments>
		<pubDate>Wed, 10 Feb 2010 20:29:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[乱码]]></category>
		<category><![CDATA[数据库]]></category>

		<guid isPermaLink="false">http://www.xixis.net/develop/mysql/mysql%e4%b9%b1%e7%a0%81%e9%97%ae%e9%a2%98%e6%80%bb%e7%bb%93/</guid>
		<description><![CDATA[ 相信很多朋友在写程序的过程中都受到过乱码的骚扰，那么今天我就这个问题来同大家探讨一下。 乱码的问题分为很多种，很多人一见到有乱码就开始骂MySQL，其实很多情况下并不是MySQL造成的。 从乱码产生的原因来分析，乱码的产生一般有以下几种情况。  1、网页编码与程序编码不一致的问题 所谓的网页编码问题就是指你的html代码中定义的“charset”，例如以下这段代码：

&#60; head&#62;
&#60;title&#62;ChatTutorialApplication&#60;/title&#62;
&#60;meta http-equiv=&#34;Content-Type&#34;content=&#34;text/html;charset=UTF-8&#34;/&#62;
&#60;metaname=&#34;language&#34;content=&#34;en&#34;/&#62;
&#60;meta name=&#34;author&#34;content=&#34;PadraicBrady&#34;/&#62;
&#60;link rel=&#34;stylesheet&#34; href=&#34;public/styles/chat.css&#34; type=&#34;text/css&#34; /&#62;
&#60;scriptsrc=&#34;public/javascript/scriptaculous/lib/prototype.js&#34; type=&#34;text/javascript&#34;&#62;&#60;/script&#62;
&#60;scriptsrc=&#34;public/javascript/scriptaculous/src/scriptaculous.js&#34; type=&#34;text/javascript&#34;&#62;&#60;/script&#62;
&#60;scriptsrc= &#34;javascript/chat.js&#34;type=&#34;text/javascript&#34;&#62;&#60;/script&#62;&#60;br /&#62;&#60;/head&#62;

他设置了浏览器端采用gb2312的字符集，此时如果程序使用的是utf8的编码（就是指以什么样的编码来编写的程序，一般在编辑器中设置），那么就会产生乱码。
此时的解决方法就是把charset的值改为utf8
2、代码本身就存在乱码问题
这种情况是指你的代码本身就存在乱码问题。造成这种情况的原因一般是你以另一种编码格式修改了你的代码后并做了保存，这样你的程序中就有几种编码形式的代码，那么输出的时候自然就会有乱码。这类问题相对来说比较容易解决，只要人工找到那段有乱码的代码，然后修改就行了（很多编辑器可以完成这个工作）。
3、MySQL的问题（此次讨论仅围绕MySQL5.0之后的版本）
现在再来看最容易造成乱码，也是最容易让人迷糊的MySQL乱码问题。
要说MySQL乱码，得先从 MySQLl的几个参数说起，从MySQL5开始，多了几个设置字符集的系统变量：

character_set_client     客户端字符集
character_set_connection  客户端与服务器端连接采用的字符集
character_set_results    SELECT 查询返回数据的字符集
character_set_database     数据库采用的字符集

乱码问题一般是由于以上几个变量设置错误造成的，很多人在请教乱码问题的时候，一般都会得到这样一个答案：“你先set names一下”。
那么set names是什么呢？ set names实际上就是同时设置了 character_set_client,character_set_connection,character_set_results这三个系统变量。
例如set names &#8216;gbk&#8217;等同于：

set@@character_set_client= &#8216;gbk&#8217;
set@@character_set_connection= &#8216;gbk&#8217;
set@@character_set_results= &#8216;gbk&#8217;

很多情况下，这样设置了之后就能把乱码问题解决了。但是还是不能完全避免出现乱码的可能，为什么呢？
因为character_set_client,character_set_connection这两个变量仅用与保证与character_set_database编码的一致，而character_set_results则用与保证SELECT返回的结果与程序的编码一致。
例如，你的数据库(character_set_database)用的是utf8的字符集，那么你就要保证 character_set_client,character_set_connection也是utf8的字符集。而你的程序也许采用的并不是 utf8，比如你的程序用的是gbk，那么你若把character_set_results也设置为utf8的话就会出现乱码问题。此时你应该把 character_set_results设置为gbk。这样就能保证数据库返回的结果与你的程序的编码一致。
下面我给出一段用于设置字符集的代码(其中用到了一个我自己写的db库，相信应该不影响阅读)：

&#60;?
//假设我们的程序采用的是utf8的字符集
$program_char = 'utf8';
//先检查mysql的版本 ，如果版机 4我们才可以设置这些系统变量(mysql4还没有这些系统变量)
$version = current&#40;$db-&#62;fetch_one&#40;'SELECT VERSION()'&#41;&#41;;
if&#40;substr&#40;$version, 0, 1&#41;&#62; 4&#41;&#123;
//取出当前数据库的字符集
$sql= 'SELECT @@character_set_database';
$char=current&#40;$db-&#62; fetch_one&#40;$sql&#41;&#41;;
//将客户端字符集(character_set_client)和连接字符集 (character_set_connection)设置为与数
据库字符集&#40;character_set_database&#41;一致
$db-&#62;query&#40;'SET @@character_set_client= &#34;'. $char. '&#34;'&#41;;
$db-&#62;query&#40;'SET @@character_set_connection= &#34;'. $char. '&#34;'&#41;;
//将SELECT查询返回数据的字符集设置为与当前程序的字符集一致&#60;br /&#62;$db-&#62;query('SET @@character_set_results= &#34;'. $program_char . '&#34;');
&#125;
?&#62;

到此应该就可以解决绝大多数我们遇到的乱码问题了，另外还必须强调的是，有时候乱码的出现有可能是以上几种原因混合造成的。
对于这样的问题处理起来就比较的麻烦。因为首先要保证你在数据库中保存的数据的字符集与数据库的字符集是一致的。如果你在一个utf8的数据库中保存了GBK字符数据（如果你页面的编码与数据库的编码不一致，那么产生这个问题的可能性就很大），那么假设以上的设置都正确，结果还是会出现乱码的问题。不过这类问题一旦确定了产生的原因，那么就还是有办法解决的，比如刚才我举的这个例子。
我们如果能确保其他环节的设置都是正确的，并且能够确认是由于把 gbk的数据存到了utf8的数据库中而造成的乱码，那么我就可以把这些数据从数据库中取出来之后再用iconv()转换编码也是可以的。
总而言之，我们应当尽量的保证数据库中的数据是正确的，那么问题处理起来就相对简单了。
说了一大堆可能把你给弄迷糊了，我将其总结为以下四点，便于大家记忆。

1、要保证数据库中存的数据与数据库编码一致，即数据编码与character_set_database一致；
2、要保证通讯的字符集与数据库的字符集一致，即 character_set_client,
character_set_connection与 character_set_database一致；
3、要保证SELECT的返回与程序的编码一致，即 character_set_results与程序编码一致；
4、要保证程序编码与浏览器编码一致，即程序编码与一致。
]]></description>
			<content:encoded><![CDATA[<p> 相信很多朋友在写程序的过程中都受到过<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/%e4%b9%b1%e7%a0%81" title="显示乱码的所有日志" target="_blank">乱码</a></span>的骚扰，那么今天我就这个问题来同大家探讨一下。<br /> <span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/%e4%b9%b1%e7%a0%81" title="显示乱码的所有日志" target="_blank">乱码</a></span>的问题分为很多种，很多人一见到有<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/%e4%b9%b1%e7%a0%81" title="显示乱码的所有日志" target="_blank">乱码</a></span>就开始骂<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/mysql" title="显示MySQL的所有日志" target="_blank">MySQL</a></span>，其实很多情况下并不是<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/mysql" title="显示MySQL的所有日志" target="_blank">MySQL</a></span>造成的。 从乱码产生的原因来分析，乱码的产生一般有以下几种情况。<br /> <span id="more-370"></span> <strong>1、网页编码与程序编码不一致的问题</strong><br /> 所谓的网页编码问题就是指你的html代码中定义的“charset”，例如以下这段代码：</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;">&lt; head<span style="color: #000000; font-weight: bold;">&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>ChatTutorialApplication<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/title<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;meta</span> <span style="color: #000066;">http-equiv</span>=<span style="color: #ff0000;">&quot;Content-Type&quot;</span><span style="color: #000066;">content</span>=<span style="color: #ff0000;">&quot;text/html;charset=UTF-8&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;">&lt;<span style="color: #000066;">metaname</span>=<span style="color: #ff0000;">&quot;language&quot;</span><span style="color: #000066;">content</span>=<span style="color: #ff0000;">&quot;en&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;meta</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;author&quot;</span><span style="color: #000066;">content</span>=<span style="color: #ff0000;">&quot;PadraicBrady&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;link</span> <span style="color: #000066;">rel</span>=<span style="color: #ff0000;">&quot;stylesheet&quot;</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;public/styles/chat.css&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text/css&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
<span style="color: #009900;">&lt;<span style="color: #000066;">scriptsrc</span>=<span style="color: #ff0000;">&quot;public/javascript/scriptaculous/lib/prototype.js&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text/javascript&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span><span style="color: #000000; font-weight: bold;">&lt;/script<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;">&lt;<span style="color: #000066;">scriptsrc</span>=<span style="color: #ff0000;">&quot;public/javascript/scriptaculous/src/scriptaculous.js&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text/javascript&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span><span style="color: #000000; font-weight: bold;">&lt;/script<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;">&lt;<span style="color: #000066;">scriptsrc</span>= <span style="color: #ff0000;">&quot;javascript/chat.js&quot;</span><span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text/javascript&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span><span style="color: #000000; font-weight: bold;">&lt;/script<span style="color: #000000; font-weight: bold;">&gt;</span></span><span style="color: #000000; font-weight: bold;">&lt;br</span> <span style="color: #000000; font-weight: bold;">/&gt;</span><span style="color: #000000; font-weight: bold;">&lt;/head<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>他设置了浏览器端采用gb2312的字符集，此时如果程序使用的是utf8的编码（就是指以什么样的编码来编写的程序，一般在编辑器中设置），那么就会产生乱码。<br />
此时的解决方法就是把charset的值改为utf8<br />
<strong>2、代码本身就存在乱码问题</strong><br />
这种情况是指你的代码本身就存在乱码问题。造成这种情况的原因一般是你以另一种编码格式修改了你的代码后并做了保存，这样你的程序中就有几种编码形式的代码，那么输出的时候自然就会有乱码。这类问题相对来说比较容易解决，只要人工找到那段有乱码的代码，然后修改就行了（很多编辑器可以完成这个工作）。<br />
<strong>3、<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/mysql" title="显示MySQL的所有日志" target="_blank">MySQL</a></span>的问题（此次讨论仅围绕MySQL5.0之后的版本）</strong><br />
现在再来看最容易造成乱码，也是最容易让人迷糊的MySQL乱码问题。<br />
要说MySQL乱码，得先从 MySQLl的几个参数说起，从MySQL5开始，多了几个设置字符集的系统变量：</p>
<blockquote><p>
character_set_client     客户端字符集<br />
character_set_connection  客户端与服务器端连接采用的字符集<br />
character_set_results    SELECT 查询返回数据的字符集<br />
character_set_database     <span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/%e6%95%b0%e6%8d%ae%e5%ba%93" title="显示数据库的所有日志" target="_blank">数据库</a></span>采用的字符集
</p></blockquote>
<p>乱码问题一般是由于以上几个变量设置错误造成的，很多人在请教乱码问题的时候，一般都会得到这样一个答案：“你先set names一下”。<br />
那么set names是什么呢？ set names实际上就是同时设置了 character_set_client,character_set_connection,character_set_results这三个系统变量。<br />
例如set names &#8216;gbk&#8217;等同于：</p>
<blockquote><p>
set@@character_set_client= &#8216;gbk&#8217;<br />
set@@character_set_connection= &#8216;gbk&#8217;<br />
set@@character_set_results= &#8216;gbk&#8217;
</p></blockquote>
<p>很多情况下，这样设置了之后就能把乱码问题解决了。但是还是不能完全避免出现乱码的可能，为什么呢？<br />
因为character_set_client,character_set_connection这两个变量仅用与保证与character_set_database编码的一致，而character_set_results则用与保证SELECT返回的结果与程序的编码一致。<br />
例如，你的<span class='wp_keywordlink_affiliate'><a href="http://www.xixis.net/archives/tag/%e6%95%b0%e6%8d%ae%e5%ba%93" title="显示数据库的所有日志" target="_blank">数据库</a></span>(character_set_database)用的是utf8的字符集，那么你就要保证 character_set_client,character_set_connection也是utf8的字符集。而你的程序也许采用的并不是 utf8，比如你的程序用的是gbk，那么你若把character_set_results也设置为utf8的话就会出现乱码问题。此时你应该把 character_set_results设置为gbk。这样就能保证数据库返回的结果与你的程序的编码一致。<br />
下面我给出一段用于设置字符集的代码(其中用到了一个我自己写的db库，相信应该不影响阅读)：</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">&lt;?</span>
<span style="color: #666666; font-style: italic;">//假设我们的程序采用的是utf8的字符集</span>
<span style="color: #000088;">$program_char</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'utf8'</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">//先检查mysql的版本 ，如果版机 4我们才可以设置这些系统变量(mysql4还没有这些系统变量)</span>
<span style="color: #000088;">$version</span> <span style="color: #339933;">=</span> <span style="color: #990000;">current</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$db</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">fetch_one</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'SELECT VERSION()'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">if</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">substr</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$version</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span> <span style="color: #cc66cc;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">&gt;</span> <span style="color: #cc66cc;">4</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>
<span style="color: #666666; font-style: italic;">//取出当前数据库的字符集</span>
<span style="color: #000088;">$sql</span><span style="color: #339933;">=</span> <span style="color: #0000ff;">'SELECT @@character_set_database'</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$char</span><span style="color: #339933;">=</span><span style="color: #990000;">current</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$db</span><span style="color: #339933;">-&gt;</span> <span style="color: #004000;">fetch_one</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$sql</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">//将客户端字符集(character_set_client)和连接字符集 (character_set_connection)设置为与数</span>
据库字符集<span style="color: #009900;">&#40;</span>character_set_database<span style="color: #009900;">&#41;</span>一致
<span style="color: #000088;">$db</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">query</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'SET @@character_set_client= &quot;'</span><span style="color: #339933;">.</span> <span style="color: #000088;">$char</span><span style="color: #339933;">.</span> <span style="color: #0000ff;">'&quot;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$db</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">query</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'SET @@character_set_connection= &quot;'</span><span style="color: #339933;">.</span> <span style="color: #000088;">$char</span><span style="color: #339933;">.</span> <span style="color: #0000ff;">'&quot;'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #666666; font-style: italic;">//将SELECT查询返回数据的字符集设置为与当前程序的字符集一致&lt;br /&gt;$db-&gt;query('SET @@character_set_results= &quot;'. $program_char . '&quot;');</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #000000; font-weight: bold;">?&gt;</span></pre></div></div>

<p>到此应该就可以解决绝大多数我们遇到的乱码问题了，另外还必须强调的是，有时候乱码的出现有可能是以上几种原因混合造成的。<br />
对于这样的问题处理起来就比较的麻烦。因为首先要保证你在数据库中保存的数据的字符集与数据库的字符集是一致的。如果你在一个utf8的数据库中保存了GBK字符数据（如果你页面的编码与数据库的编码不一致，那么产生这个问题的可能性就很大），那么假设以上的设置都正确，结果还是会出现乱码的问题。不过这类问题一旦确定了产生的原因，那么就还是有办法解决的，比如刚才我举的这个例子。<br />
我们如果能确保其他环节的设置都是正确的，并且能够确认是由于把 gbk的数据存到了utf8的数据库中而造成的乱码，那么我就可以把这些数据从数据库中取出来之后再用iconv()转换编码也是可以的。<br />
总而言之，我们应当尽量的保证数据库中的数据是正确的，那么问题处理起来就相对简单了。<br />
说了一大堆可能把你给弄迷糊了，我将其总结为以下四点，便于大家记忆。</p>
<blockquote>
<p>1、要保证数据库中存的数据与数据库编码一致，即数据编码与character_set_database一致；<br />
2、要保证通讯的字符集与数据库的字符集一致，即 character_set_client,<br />
character_set_connection与 character_set_database一致；<br />
3、要保证SELECT的返回与程序的编码一致，即 character_set_results与程序编码一致；<br />
4、要保证程序编码与浏览器编码一致，即程序编码与<metahttp-equiv="Content-Type" content="text/html; charset=？"/>一致。</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.xixis.net/archives/mysql-garbled-issue-summary.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>经典 MYSQL语句</title>
		<link>http://www.xixis.net/archives/classic-mysql-statement.html</link>
		<comments>http://www.xixis.net/archives/classic-mysql-statement.html#comments</comments>
		<pubDate>Wed, 10 Feb 2010 20:18:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">http://www.xixis.net/develop/mysql/%e7%bb%8f%e5%85%b8-mysql%e8%af%ad%e5%8f%a5/</guid>
		<description><![CDATA[SQL 分类：      DDL—数据定义语言(Create，Alter，Drop，DECLARE)       DML—数据操纵语言 (Select，Delete，Update，Insert)       DCL—数据控制语言 (GRANT，REVOKE，COMMIT，ROLLBACK)

 
首先,简要介绍基础语句：     1、说明：创建数据库     

CREATE DATABASE database-name


  2、说明：删除数据库 


DROP DATABASE dbname

3、说明：备份sql server 
&#8212; 创建 备份数据的 device

USE master
&#160;
EXEC sp_addumpdevice 'disk', 'testBack', 'c:&#38;amp;#92;mssql7backup&#38;amp;#92;MyNwind_1.dat'

&#8212; 开始备份

BACKUP DATABASE pubs TO testBack

4、说明：创建新表

CREATE TABLE tabname&#40;col1 type1 &#91;NOT NULL&#93; &#91;PRIMARY KEY&#93;,col2 type2 &#91;NOT NULL&#93;,..&#41;

根据已有的表创建新表： A：

CREATE TABLE tab_new LIKE tab_old #(使用旧表创建新表)

B：

CREATE TABLE tab_new AS SELECT col1,col2… FROM tab_old definition only

5、说明：删除新表

DROP TABLE tabname

6、说明：增加一个列

ALTER TABLE tabname ADD COLUMN col type

注：列增加后将不能删除。DB2中列加上后数据类型也不能改变，唯一能改变的是增加varchar类型的长度。 ...]]></description>
			<content:encoded><![CDATA[<blockquote><p>SQL 分类：      <br />DDL—数据定义语言(Create，Alter，Drop，DECLARE)       <br />DML—数据操纵语言 (Select，Delete，Update，Insert)       <br />DCL—数据控制语言 (GRANT，REVOKE，COMMIT，ROLLBACK)</p>
</blockquote>
<p> <span id="more-369"></span>
<p>首先,简要介绍基础语句：     <br />1、说明：创建数据库     </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">DATABASE</span> database<span style="color: #66cc66;">-</span>name</pre></div></div>

<p>
  <br />2、说明：删除数据库 </p>
<p></p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DROP</span> <span style="color: #993333; font-weight: bold;">DATABASE</span> dbname</pre></div></div>

<p>3、说明：备份sql server </p>
<p>&#8212; 创建 备份数据的 device</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">USE</span> master
&nbsp;
EXEC sp_addumpdevice <span style="color: #ff0000;">'disk'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'testBack'</span><span style="color: #66cc66;">,</span> <span style="color: #ff0000;">'c:&amp;amp;#92;mssql7backup&amp;amp;#92;MyNwind_1.dat'</span></pre></div></div>

<p>&#8212; 开始备份</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">BACKUP <span style="color: #993333; font-weight: bold;">DATABASE</span> pubs <span style="color: #993333; font-weight: bold;">TO</span> testBack</pre></div></div>

<p>4、说明：创建新表</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> tabname<span style="color: #66cc66;">&#40;</span>col1 type1 <span style="color: #66cc66;">&#91;</span><span style="color: #993333; font-weight: bold;">NOT</span> <span style="color: #993333; font-weight: bold;">NULL</span><span style="color: #66cc66;">&#93;</span> <span style="color: #66cc66;">&#91;</span><span style="color: #993333; font-weight: bold;">PRIMARY</span> <span style="color: #993333; font-weight: bold;">KEY</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">,</span>col2 type2 <span style="color: #66cc66;">&#91;</span><span style="color: #993333; font-weight: bold;">NOT</span> <span style="color: #993333; font-weight: bold;">NULL</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">,..</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>根据已有的表创建新表： A：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> tab_new <span style="color: #993333; font-weight: bold;">LIKE</span> tab_old <span style="color: #808080; font-style: italic;">#(使用旧表创建新表)</span></pre></div></div>

<p>B：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> tab_new <span style="color: #993333; font-weight: bold;">AS</span> <span style="color: #993333; font-weight: bold;">SELECT</span> col1<span style="color: #66cc66;">,</span>col2… <span style="color: #993333; font-weight: bold;">FROM</span> tab_old definition only</pre></div></div>

<p>5、说明：删除新表</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DROP</span> <span style="color: #993333; font-weight: bold;">TABLE</span> tabname</pre></div></div>

<p>6、说明：增加一个列</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">ALTER</span> <span style="color: #993333; font-weight: bold;">TABLE</span> tabname <span style="color: #993333; font-weight: bold;">ADD</span> <span style="color: #993333; font-weight: bold;">COLUMN</span> col type</pre></div></div>

<blockquote><p>注：列增加后将不能删除。DB2中列加上后数据类型也不能改变，唯一能改变的是增加varchar类型的长度。 </p></blockquote>
<p>7、说明：添加主键：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">ALTER</span> <span style="color: #993333; font-weight: bold;">TABLE</span> tabname <span style="color: #993333; font-weight: bold;">ADD</span> <span style="color: #993333; font-weight: bold;">PRIMARY</span> <span style="color: #993333; font-weight: bold;">KEY</span><span style="color: #66cc66;">&#40;</span>col<span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>说明：删除主键：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"> <span style="color: #993333; font-weight: bold;">ALTER</span> <span style="color: #993333; font-weight: bold;">TABLE</span> tabname <span style="color: #993333; font-weight: bold;">DROP</span> <span style="color: #993333; font-weight: bold;">PRIMARY</span> <span style="color: #993333; font-weight: bold;">KEY</span><span style="color: #66cc66;">&#40;</span>col<span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>8、说明：创建索引：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #66cc66;">&#91;</span><span style="color: #993333; font-weight: bold;">UNIQUE</span><span style="color: #66cc66;">&#93;</span> <span style="color: #993333; font-weight: bold;">INDEX</span> idxname <span style="color: #993333; font-weight: bold;">ON</span> tabname<span style="color: #66cc66;">&#40;</span>col…<span style="color: #66cc66;">.</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>删除索引：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DROP</span> <span style="color: #993333; font-weight: bold;">INDEX</span> idxname</pre></div></div>

<blockquote><p>注：索引是不可更改的，想更改必须删除重新建。 </p></blockquote>
<p>9、说明：创建视图：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">CREATE</span> <span style="color: #993333; font-weight: bold;">VIEW</span> viewname <span style="color: #993333; font-weight: bold;">AS</span> <span style="color: #993333; font-weight: bold;">SELECT</span> statement</pre></div></div>

<p>删除视图：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DROP</span> <span style="color: #993333; font-weight: bold;">VIEW</span> viewname</pre></div></div>

<p>10、说明：几个简单的基本的sql语句</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">选择：<span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">WHERE</span> 范围
&nbsp;
插入：<span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> table1<span style="color: #66cc66;">&#40;</span>field1<span style="color: #66cc66;">,</span>field2<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">VALUES</span><span style="color: #66cc66;">&#40;</span>value1<span style="color: #66cc66;">,</span>value2<span style="color: #66cc66;">&#41;</span>
&nbsp;
删除：<span style="color: #993333; font-weight: bold;">DELETE</span> <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">WHERE</span> 范围
&nbsp;
更新：<span style="color: #993333; font-weight: bold;">UPDATE</span> table1 <span style="color: #993333; font-weight: bold;">SET</span> field1<span style="color: #66cc66;">=</span>value1 <span style="color: #993333; font-weight: bold;">WHERE</span> 范围
&nbsp;
查找：<span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">WHERE</span> field1 <span style="color: #993333; font-weight: bold;">LIKE</span> ’%value1%’ <span style="color: #808080; font-style: italic;">---like的语法很精妙，查资料!</span>
&nbsp;
排序：<span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> field1<span style="color: #66cc66;">,</span>field2 <span style="color: #66cc66;">&#91;</span><span style="color: #993333; font-weight: bold;">DESC</span><span style="color: #66cc66;">&#93;</span>
&nbsp;
总数：<span style="color: #993333; font-weight: bold;">SELECT</span> count <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">AS</span> totalcount <span style="color: #993333; font-weight: bold;">FROM</span> table1
&nbsp;
求和：<span style="color: #993333; font-weight: bold;">SELECT</span> sum<span style="color: #66cc66;">&#40;</span>field1<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">AS</span> sumvalue <span style="color: #993333; font-weight: bold;">FROM</span> table1
&nbsp;
平均：<span style="color: #993333; font-weight: bold;">SELECT</span> avg<span style="color: #66cc66;">&#40;</span>field1<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">AS</span> avgvalue <span style="color: #993333; font-weight: bold;">FROM</span> table1
&nbsp;
最大：<span style="color: #993333; font-weight: bold;">SELECT</span> max<span style="color: #66cc66;">&#40;</span>field1<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">AS</span> maxvalue <span style="color: #993333; font-weight: bold;">FROM</span> table1
&nbsp;
最小：<span style="color: #993333; font-weight: bold;">SELECT</span> min<span style="color: #66cc66;">&#40;</span>field1<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">AS</span> minvalue <span style="color: #993333; font-weight: bold;">FROM</span> table1</pre></div></div>

<h3>11、说明：几个高级查询运算词</h3>
<p><strong>A： UNION 运算符</strong> </p>
<p>UNION 运算符通过组合其他两个结果表（例如 TABLE1 和 TABLE2）并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时（即 UNION ALL），不消除重复行。两种情况下，派生表的每一行不是来自 TABLE1 就是来自 TABLE2。 </p>
<p><strong>B： EXCEPT 运算符</strong> </p>
<p>EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL)，不消除重复行。 </p>
<p><strong>C： INTERSECT 运算符</strong> </p>
<p>INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL)，不消除重复行。 </p>
<p></p>
<blockquote><p>注：使用运算词的几个查询结果行必须是一致的。 </p></blockquote>
</p>
<h3>12、说明：使用外连接</h3>
<p><strong>A、left outer join：</strong> </p>
<p>左外连接（左连接）：结果集几包括连接表的匹配行，也包括左连接表的所有行。</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">SQL: <span style="color: #993333; font-weight: bold;">SELECT</span> a<span style="color: #66cc66;">.</span>a<span style="color: #66cc66;">,</span> a<span style="color: #66cc66;">.</span>b<span style="color: #66cc66;">,</span> a<span style="color: #66cc66;">.</span>c<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">.</span>c<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">.</span>d<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">.</span>f <span style="color: #993333; font-weight: bold;">FROM</span> a <span style="color: #993333; font-weight: bold;">LEFT</span> OUT <span style="color: #993333; font-weight: bold;">JOIN</span> b <span style="color: #993333; font-weight: bold;">ON</span> a<span style="color: #66cc66;">.</span>a <span style="color: #66cc66;">=</span> b<span style="color: #66cc66;">.</span>c</pre></div></div>

<p><strong>B：right outer join:</strong> </p>
<p>右外连接(右连接)：结果集既包括连接表的匹配连接行，也包括右连接表的所有行。 </p>
<p><strong>C：full outer join：</strong> </p>
<p>全外连接：不仅包括符号连接表的匹配行，还包括两个连接表中的所有记录。 </p>
<p>其次，大家来看一些不错的sql语句<br />
  <br />1、说明：复制表(只复制结构,源表名：a 新表名：b) (Access可用) </p>
<p>法一：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">INTO</span> b <span style="color: #993333; font-weight: bold;">FROM</span> a <span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&lt;&gt;</span><span style="color: #cc66cc;">1</span></pre></div></div>

<p>法二：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">0</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">INTO</span> b <span style="color: #993333; font-weight: bold;">FROM</span> a</pre></div></div>

</p>
<p>2、说明：拷贝表(拷贝数据,源表名：a 目标表名：b) (Access可用)<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> b<span style="color: #66cc66;">&#40;</span>a<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">,</span> c<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">SELECT</span> d<span style="color: #66cc66;">,</span>e<span style="color: #66cc66;">,</span>f <span style="color: #993333; font-weight: bold;">FROM</span> b;</pre></div></div>

</p>
<p>3、说明：跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> b<span style="color: #66cc66;">&#40;</span>a<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">,</span> c<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">SELECT</span> d<span style="color: #66cc66;">,</span>e<span style="color: #66cc66;">,</span>f <span style="color: #993333; font-weight: bold;">FROM</span> b <span style="color: #993333; font-weight: bold;">IN</span> ‘具体数据库’ <span style="color: #993333; font-weight: bold;">WHERE</span> 条件</pre></div></div>

<p></p>
<p>4、说明：子查询(表名1：a 表名2：b)
</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> a<span style="color: #66cc66;">,</span>b<span style="color: #66cc66;">,</span>c <span style="color: #993333; font-weight: bold;">FROM</span> a <span style="color: #993333; font-weight: bold;">WHERE</span> a <span style="color: #993333; font-weight: bold;">IN</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> d <span style="color: #993333; font-weight: bold;">FROM</span> b <span style="color: #66cc66;">&#41;</span> 或者: <span style="color: #993333; font-weight: bold;">SELECT</span> a<span style="color: #66cc66;">,</span>b<span style="color: #66cc66;">,</span>c <span style="color: #993333; font-weight: bold;">FROM</span> a <span style="color: #993333; font-weight: bold;">WHERE</span> 
a <span style="color: #993333; font-weight: bold;">IN</span> <span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">1</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">2</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">3</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>5、说明：显示文章、提交人和最后回复时间</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> a<span style="color: #66cc66;">.</span>title<span style="color: #66cc66;">,</span>a<span style="color: #66cc66;">.</span>username<span style="color: #66cc66;">,</span>b<span style="color: #66cc66;">.</span>adddate <span style="color: #993333; font-weight: bold;">FROM</span> <span style="color: #993333; font-weight: bold;">TABLE</span> a<span style="color: #66cc66;">,</span><span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> max<span style="color: #66cc66;">&#40;</span>adddate<span style="color: #66cc66;">&#41;</span> adddate <span style="color: #993333; font-weight: bold;">FROM</span> <span style="color: #993333; font-weight: bold;">TABLE</span> <span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #993333; font-weight: bold;">TABLE</span><span style="color: #66cc66;">.</span>title<span style="color: #66cc66;">=</span>a<span style="color: #66cc66;">.</span>title<span style="color: #66cc66;">&#41;</span> b</pre></div></div>

</p>
<p>6、说明：外连接查询(表名1：a 表名2：b)</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> a<span style="color: #66cc66;">.</span>a<span style="color: #66cc66;">,</span> a<span style="color: #66cc66;">.</span>b<span style="color: #66cc66;">,</span> a<span style="color: #66cc66;">.</span>c<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">.</span>c<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">.</span>d<span style="color: #66cc66;">,</span> b<span style="color: #66cc66;">.</span>f <span style="color: #993333; font-weight: bold;">FROM</span> a <span style="color: #993333; font-weight: bold;">LEFT</span> OUT <span style="color: #993333; font-weight: bold;">JOIN</span> b <span style="color: #993333; font-weight: bold;">ON</span> a<span style="color: #66cc66;">.</span>a <span style="color: #66cc66;">=</span> b<span style="color: #66cc66;">.</span>c</pre></div></div>

</p>
<p>7、说明：在线视图查询(表名1：a )</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> a<span style="color: #66cc66;">,</span>b<span style="color: #66cc66;">,</span>c <span style="color: #993333; font-weight: bold;">FROM</span> a<span style="color: #66cc66;">&#41;</span> T <span style="color: #993333; font-weight: bold;">WHERE</span> t<span style="color: #66cc66;">.</span>a <span style="color: #66cc66;">&gt;</span><span style="color: #cc66cc;">1</span>;</pre></div></div>

</p>
<p>8、说明：between的用法,between限制查询数据范围时包括了边界值,not between不包括<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">WHERE</span> time <span style="color: #993333; font-weight: bold;">BETWEEN</span> time1 <span style="color: #993333; font-weight: bold;">AND</span> time2</pre></div></div>

<p>select a,b,c, from table1 where a not between 数值1 and 数值2 </p>
<p>9、说明：in 的使用方法</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">WHERE</span> a <span style="color: #66cc66;">&#91;</span><span style="color: #993333; font-weight: bold;">NOT</span><span style="color: #66cc66;">&#93;</span> <span style="color: #993333; font-weight: bold;">IN</span> <span style="color: #66cc66;">&#40;</span>‘值<span style="color: #cc66cc;">1</span>’<span style="color: #66cc66;">,</span>’值<span style="color: #cc66cc;">2</span>’<span style="color: #66cc66;">,</span>’值<span style="color: #cc66cc;">4</span>’<span style="color: #66cc66;">,</span>’值<span style="color: #cc66cc;">6</span>’<span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>10、说明：两张关联表，删除主表中已经在副表中没有的信息<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DELETE</span> <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #993333; font-weight: bold;">NOT</span> <span style="color: #993333; font-weight: bold;">EXISTS</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> table2 <span style="color: #993333; font-weight: bold;">WHERE</span> table1<span style="color: #66cc66;">.</span>field1<span style="color: #66cc66;">=</span>table2<span style="color: #66cc66;">.</span>field1 <span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>11、说明：四表联查问题：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> a <span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">INNER</span> <span style="color: #993333; font-weight: bold;">JOIN</span> b <span style="color: #993333; font-weight: bold;">ON</span> a<span style="color: #66cc66;">.</span>a<span style="color: #66cc66;">=</span>b<span style="color: #66cc66;">.</span>b <span style="color: #993333; font-weight: bold;">RIGHT</span> <span style="color: #993333; font-weight: bold;">INNER</span> <span style="color: #993333; font-weight: bold;">JOIN</span> c <span style="color: #993333; font-weight: bold;">ON</span> a<span style="color: #66cc66;">.</span>a<span style="color: #66cc66;">=</span>c<span style="color: #66cc66;">.</span>c <span style="color: #993333; font-weight: bold;">INNER</span> <span style="color: #993333; font-weight: bold;">JOIN</span> d <span style="color: #993333; font-weight: bold;">ON</span> a<span style="color: #66cc66;">.</span>a<span style="color: #66cc66;">=</span>d<span style="color: #66cc66;">.</span>d <span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #66cc66;">.....</span></pre></div></div>

</p>
<p>12、说明：曰程安排提前五分钟提醒</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> 曰程安排 <span style="color: #993333; font-weight: bold;">WHERE</span> datediff<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'minute'</span><span style="color: #66cc66;">,</span>f开始时间<span style="color: #66cc66;">,</span>getdate<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&gt;</span><span style="color: #cc66cc;">5</span></pre></div></div>

</p>
<p>13、说明：一条 sql 语句搞定数据库分页</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">10</span> b<span style="color: #66cc66;">.*</span> <span style="color: #993333; font-weight: bold;">FROM</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">20</span> 主键字段<span style="color: #66cc66;">,</span>排序字段 <span style="color: #993333; font-weight: bold;">FROM</span> 表名 <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> 排序字段 <span style="color: #993333; font-weight: bold;">DESC</span><span style="color: #66cc66;">&#41;</span> a<span style="color: #66cc66;">,</span>表名 b <span style="color: #993333; font-weight: bold;">WHERE</span> b<span style="color: #66cc66;">.</span>主键字段 <span style="color: #66cc66;">=</span> a<span style="color: #66cc66;">.</span>主键字段 <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> a<span style="color: #66cc66;">.</span>排序字段</pre></div></div>

</p>
<p>14、说明：前10条记录</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">10</span> <span style="color: #66cc66;">*</span> form table1 <span style="color: #993333; font-weight: bold;">WHERE</span> 范围</pre></div></div>

</p>
<p>15、说明：选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> a<span style="color: #66cc66;">,</span>b<span style="color: #66cc66;">,</span>c <span style="color: #993333; font-weight: bold;">FROM</span> tablename ta <span style="color: #993333; font-weight: bold;">WHERE</span> a<span style="color: #66cc66;">=</span><span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> max<span style="color: #66cc66;">&#40;</span>a<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">FROM</span> tablename tb <span style="color: #993333; font-weight: bold;">WHERE</span> tb<span style="color: #66cc66;">.</span>b<span style="color: #66cc66;">=</span>ta<span style="color: #66cc66;">.</span>b<span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>16、说明：包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> a <span style="color: #993333; font-weight: bold;">FROM</span> tableA <span style="color: #66cc66;">&#41;</span> except <span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> a <span style="color: #993333; font-weight: bold;">FROM</span> tableB<span style="color: #66cc66;">&#41;</span> except <span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> a <span style="color: #993333; font-weight: bold;">FROM</span> tableC<span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>17、说明：随机取出10条数据<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">10</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> tablename <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> newid<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>18、说明：随机选择记录<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> newid<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>19、说明：删除重复记录<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">DELETE</span> <span style="color: #993333; font-weight: bold;">FROM</span> tablename <span style="color: #993333; font-weight: bold;">WHERE</span> id <span style="color: #993333; font-weight: bold;">NOT</span> <span style="color: #993333; font-weight: bold;">IN</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> max<span style="color: #66cc66;">&#40;</span>id<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">FROM</span> tablename <span style="color: #993333; font-weight: bold;">GROUP</span> <span style="color: #993333; font-weight: bold;">BY</span> col1<span style="color: #66cc66;">,</span>col2<span style="color: #66cc66;">,...</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>20、说明：列出数据库里所有的表名<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> name <span style="color: #993333; font-weight: bold;">FROM</span> sysobjects <span style="color: #993333; font-weight: bold;">WHERE</span> type<span style="color: #66cc66;">=</span><span style="color: #ff0000;">'U'</span></pre></div></div>

</p>
<p>21、说明：列出表里的所有的<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> name <span style="color: #993333; font-weight: bold;">FROM</span> syscolumns <span style="color: #993333; font-weight: bold;">WHERE</span> id<span style="color: #66cc66;">=</span>object_id<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'TableName'</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

</p>
<p>22、说明：列示type、vender、pcs 字段，以type字段排列，case可以方便地实现多重选择，类似select 中的case。<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> type<span style="color: #66cc66;">,</span>sum<span style="color: #66cc66;">&#40;</span>case vender when <span style="color: #ff0000;">'A'</span> then pcs else <span style="color: #cc66cc;">0</span> end<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>sum<span style="color: #66cc66;">&#40;</span>case vender when <span style="color: #ff0000;">'C'</span> then pcs else <span style="color: #cc66cc;">0</span> end<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>sum<span style="color: #66cc66;">&#40;</span>case vender when <span style="color: #ff0000;">'B'</span> then pcs else <span style="color: #cc66cc;">0</span> end<span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">FROM</span> tablename <span style="color: #993333; font-weight: bold;">GROUP</span> <span style="color: #993333; font-weight: bold;">BY</span> type</pre></div></div>

<blockquote><p>
<br />显示结果： </p>
<p>type vender pcs </p>
<p>电脑 A 1 </p>
<p>电脑 A 1 </p>
<p>光盘 B 2 </p>
<p>光盘 A 2 </p>
<p>手机 B 3 </p>
<p>手机 C 3 </p>
</blockquote>
<p>23、说明：初始化表table1<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">TRUNCATE</span> <span style="color: #993333; font-weight: bold;">TABLE</span> table1</pre></div></div>

</p>
<p>24、说明：选择从10到15的记录<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">5</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> <span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">15</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> <span style="color: #993333; font-weight: bold;">TABLE</span> <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> id <span style="color: #993333; font-weight: bold;">ASC</span><span style="color: #66cc66;">&#41;</span> table_别名 <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> id <span style="color: #993333; font-weight: bold;">DESC</span></pre></div></div>

<p>随机选择数据库记录的方法（使用Randomize函数，通过SQL语句实现）<br /> 对存储在数据库中的数据来说，随机数特性能给出上面的效果，但它们可能太慢了些。你不能要求ASP“找个随机数”然后打印出来。实际上常见的解决方案是建立如下所示的循环：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">Randomize 
&nbsp;
RNumber <span style="color: #66cc66;">=</span> Int<span style="color: #66cc66;">&#40;</span>Rnd<span style="color: #66cc66;">*</span><span style="color: #cc66cc;">499</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">+</span><span style="color: #cc66cc;">1</span> 
&nbsp;
While <span style="color: #993333; font-weight: bold;">NOT</span> objRec<span style="color: #66cc66;">.</span>EOF 
&nbsp;
<span style="color: #993333; font-weight: bold;">IF</span> objRec<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'ID'</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">=</span> RNumber THEN 
&nbsp;
<span style="color: #808080; font-style: italic;">#... 这里是执行脚本 ... </span>
&nbsp;
end <span style="color: #993333; font-weight: bold;">IF</span> 
&nbsp;
objRec<span style="color: #66cc66;">.</span>MoveNext 
&nbsp;
Wend</pre></div></div>

<p>这很容易理解。首先，你取出1到500范围之内的一个随机数（假设500就是数据库内记录的总数）。然后，你遍历每一记录来测试ID 的值、检查其是否匹配RNumber。满足条件的话就执行由THEN 关键字开始的那一块代码。假如你的RNumber 等于495，那么要循环一遍数据库花的时间可就长了。虽然500这个数字看起来大了些，但相比更为稳固的企业解决方案这还是个小型数据库了，后者通常在一个数据库内就包含了成千上万条记录。这时候不就死定了？ </p>
<p>采用SQL，你就可以很快地找出准确的记录并且打开一个只包含该记录的 recordset，如下所示：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">Randomize
RNumber <span style="color: #66cc66;">=</span> Int<span style="color: #66cc66;">&#40;</span>Rnd<span style="color: #66cc66;">*</span><span style="color: #cc66cc;">499</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">+</span> <span style="color: #cc66cc;">1</span>
　
SQL <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;Select * FROM Customers Where ID = &quot;</span> &amp; RNumber
　
<span style="color: #993333; font-weight: bold;">SET</span> objRec <span style="color: #66cc66;">=</span> ObjConn<span style="color: #66cc66;">.</span>Execute<span style="color: #66cc66;">&#40;</span>SQL<span style="color: #66cc66;">&#41;</span>
Response<span style="color: #66cc66;">.</span>WriteRNumber &amp; <span style="color: #ff0000;">&quot; = &quot;</span> &amp; objRec<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;ID&quot;</span><span style="color: #66cc66;">&#41;</span> &amp; <span style="color: #ff0000;">&quot; &quot;</span> &amp; objRec<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;c_email&quot;</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>不必写出RNumber 和ID，你只需要检查匹配情况即可。只要你对以上代码的工作满意，你自可按需操作“随机”记录。Recordset没有包含其他内容，因此你很快就能找到你需要的记录这样就大大降低了处理时间。 </p>
<p>再谈随机数 </p>
<p>现在你下定决心要榨干Random 函数的最后一滴油，那么你可能会一次取出多条随机记录或者想采用一定随机范围内的记录。把上面的标准Random 示例扩展一下就可以用SQL应对上面两种情况了。 </p>
<p>为了取出几条随机选择的记录并存放在同一recordset内，你可以存储三个随机数，然后查询数据库获得匹配这些数字的记录：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">SQL <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;Select * FROM Customers Where ID = &quot;</span> &amp; RNumber &amp; <span style="color: #ff0000;">&quot; or ID = &quot;</span> &amp; RNumber2 &amp; <span style="color: #ff0000;">&quot; or ID = &quot;</span> &amp; RNumber3</pre></div></div>

<p>假如你想选出10条记录（也许是每次页面装载时的10条链接的列表），你可以用 BETWEEN 或者数学等式选出第一条记录和适当数量的递增记录。这一操作可以通过好几种方式来完成，但是 Select 语句只显示一种可能（这里的ID 是自动生成的号码）：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">SQL <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">&quot;Select * FROM Customers Where ID BETWEEN &quot;</span> &amp; RNumber &amp; <span style="color: #ff0000;">&quot; AND &quot;</span> &amp; RNumber &amp; <span style="color: #ff0000;">&quot;+ 9&quot;</span></pre></div></div>

<p>注意：以上代码的执行目的不是检查数据库内是否有9条并发记录。 </p>
<p>随机读取若干条记录，测试过<br />
  <br />Access语法：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> top <span style="color: #cc66cc;">10</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> 表名 <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> Rnd<span style="color: #66cc66;">&#40;</span>id<span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>Sql server语法：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> top n <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> 表名 <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> newid<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>MySql语法：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> 表名 <span style="color: #993333; font-weight: bold;">ORDER</span> <span style="color: #993333; font-weight: bold;">BY</span> rand<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">LIMIT</span> n</pre></div></div>

<p>Access左连接语法(最近开发要用左连接,Access帮助什么都没有,网上没有Access的SQL说明,只有自己测试, 现在记下以备后查) </p>
<p>语法：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> table1<span style="color: #66cc66;">.</span>fd1<span style="color: #66cc66;">,</span>table1<span style="color: #66cc66;">,</span>fd2<span style="color: #66cc66;">,</span>table2<span style="color: #66cc66;">.</span>fd2 <span style="color: #993333; font-weight: bold;">FROM</span> table1 <span style="color: #993333; font-weight: bold;">LEFT</span> <span style="color: #993333; font-weight: bold;">JOIN</span> table2 <span style="color: #993333; font-weight: bold;">ON</span> table1<span style="color: #66cc66;">.</span>fd1<span style="color: #66cc66;">,</span>table2<span style="color: #66cc66;">.</span>fd1 <span style="color: #993333; font-weight: bold;">WHERE</span> <span style="color: #66cc66;">...</span></pre></div></div>

<p>使用SQL语句用&#8230;代替过长的字符串显示 </p>
<p>语法： </p>
<p>SQL数据库：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> case when len<span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">FIELD</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&gt;</span><span style="color: #cc66cc;">10</span> then <span style="color: #993333; font-weight: bold;">LEFT</span><span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">FIELD</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">10</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">+</span><span style="color: #ff0000;">'...'</span> else <span style="color: #993333; font-weight: bold;">FIELD</span> end <span style="color: #993333; font-weight: bold;">AS</span> news_name<span style="color: #66cc66;">,</span>news_id <span style="color: #993333; font-weight: bold;">FROM</span> tablename</pre></div></div>

<p>Access数据库：</p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SELECT</span> iif<span style="color: #66cc66;">&#40;</span>len<span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">FIELD</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&gt;</span><span style="color: #cc66cc;">2</span><span style="color: #66cc66;">,</span><span style="color: #993333; font-weight: bold;">LEFT</span><span style="color: #66cc66;">&#40;</span><span style="color: #993333; font-weight: bold;">FIELD</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">2</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">+</span><span style="color: #ff0000;">'...'</span><span style="color: #66cc66;">,</span><span style="color: #993333; font-weight: bold;">FIELD</span><span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">FROM</span> tablename;</pre></div></div>

<p>Conn.Execute说明 </p>
<p>Execute方法 </p>
<p>该方法用于执行SQL语句。根据SQL语句执行后是否返回记录集，该方法的使用格式分为以下两种： </p>
<p>1．执行SQL查询语句时，将返回查询得到的记录集。用法为： </p>
<p></p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">SET</span> 对象变量名<span style="color: #66cc66;">=</span>连接对象<span style="color: #66cc66;">.</span>Execute<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;SQL 查询语言&quot;</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>Execute方法调用后，会自动创建记录集对象，并将查询结果存储在该记录对象中，通过Set方法，将记录集赋给指定的对象保存，以后对象变量就代表了该记录集对象。 </p>
<p>2．执行SQL的操作性语言时，没有记录集的返回。此时用法为：<br />
  </p>

<div class="wp_syntax"><div class="code"><pre class="sql" style="font-family:monospace;">连接对象<span style="color: #66cc66;">.</span>Execute <span style="color: #ff0000;">&quot;SQL 操作性语句&quot;</span> <span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">,</span> RecordAffected<span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">&#91;</span><span style="color: #66cc66;">,</span> <span style="color: #993333; font-weight: bold;">OPTION</span><span style="color: #66cc66;">&#93;</span></pre></div></div>

<blockquote><p>
·RecordAffected 为可选项，此出可放置一个变量，SQL语句执行后，所生效的记录数会自动保存到该变量中。通过访问该变量，就可知道SQL语句队多少条记录进行了操作。 </p>
<p>·Option 可选项，该参数的取值通常为adCMDText，它用于告诉ADO，应该将Execute方法之后的第一个字符解释为命令文本。通过指定该参数，可使执行更高效。 </p>
<p>·BeginTrans、RollbackTrans、CommitTrans方法<br />　　这三个方法是连接对象提供的用于事务处理的方法。BeginTrans用于开始一个事物；RollbackTrans用于回滚事务；CommitTrans用于提交所有的事务处理结果，即确认事务的处理。
</p></blockquote>
<p>事务处理可以将一组操作视为一个整体，只有全部语句都成功执行后，事务处理才算成功；若其中有一个语句执行失败，则整个处理就算失败，并恢复到处里前的状态。 </p>
<p>BeginTrans和CommitTrans用于标记事务的开始和结束，在这两个之间的语句，就是作为事务处理的语句。判断事务处理是否成功，可通过连接对象的Error集合来实现，若Error集合的成员个数不为0，则说明有错误发生，事务处理失败。Error集合中的每一个Error对象，代表一个错误信息。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xixis.net/archives/classic-mysql-statement.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

