﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-从制造到创造-随笔分类-数据库</title><link>http://www.blogjava.net/coderdream/category/15649.html</link><description>软件工程师成长之路</description><language>zh-cn</language><lastBuildDate>Sun, 18 Oct 2009 14:14:31 GMT</lastBuildDate><pubDate>Sun, 18 Oct 2009 14:14:31 GMT</pubDate><ttl>60</ttl><item><title>Oracle数据库安装及配置</title><link>http://www.blogjava.net/coderdream/archive/2009/10/18/298760.html</link><dc:creator>CoderDream</dc:creator><author>CoderDream</author><pubDate>Sun, 18 Oct 2009 12:13:00 GMT</pubDate><guid>http://www.blogjava.net/coderdream/archive/2009/10/18/298760.html</guid><wfw:comment>http://www.blogjava.net/coderdream/comments/298760.html</wfw:comment><comments>http://www.blogjava.net/coderdream/archive/2009/10/18/298760.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/coderdream/comments/commentRss/298760.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/coderdream/services/trackbacks/298760.html</trackback:ping><description><![CDATA[<br />
<h2>1、安装</h2>
<p>Oracle 版本：Oracle Database 10g Release 2 (10.2.0.1)</p>
<p>下载地址：</p>
<p><a title="http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html" href="http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html">http://www.oracle.com/technology/software/products/database/oracle10g/htdocs/10201winsoft.html</a></p>
<p>安装设置：</p>
<p>1）这里的全局数据库名即为你创建的数据库名，以后在访问数据，创建&#8220;本地Net服务名&#8221;时用到；</p>
2）数据库口令在登录和创建&#8220;本地Net服务名&#8221;等地方会用到。<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0001.jpg" border="0" /><br />
<br />
<h2>2、创建&#8220;本地Net服务名&#8221;</h2>
<h3>1）通过【程序】-》【Oracle - OraDb10g_home1】-》【配置和移植工具】-》【Net Configuration Assistant】，运行&#8220;网络配置助手&#8221;工具：</h3>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0002.jpg" border="0" /> <br />
<h3>2）选择&#8220;本地 Net 服务名配置&#8221;：</h3>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0003.jpg" border="0" /><br />
<br />
<h3>3）这里的&#8220;Net 服务名&#8221;我们输入安装数据库时的&#8220;全局数据库名&#8221;：</h3>
<img height="395" alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0004.jpg" width="600" border="0" /><br />
<br />
<h3>4）主机名我们输入本机的IP地址：</h3>
<img height="395" alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0005.jpg" width="600" border="0" /><br />
<br />
<h3>5）测试数据库连接，用户名/密码为：System/数据库口令（安装时输入的&#8220;数据库口令&#8221;）：</h3>
<p>&nbsp;<img height="395" alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0006.jpg" width="600" border="0" /><br />
<br />
默认的用户名/密码错误：</p>
<p><img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0007.jpg" border="0" /><br />
<br />
更改登录，输入正确的用户名/密码：<br />
<br />
</p>
<p><img height="194" alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0008.jpg" width="191" border="0" /><br />
<br />
测试成功：<br />
<br />
</p>
<h2><img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0009.jpg" border="0" /></h2>
<h2><br />
3、PLSQL Developer 连接测试</h2>
<p>输入正确的用户名/口令：</p>
<p><img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0010.jpg" border="0" /><br />
<br />
成功登陆：</p>
<p>&nbsp;<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0011.jpg" border="0" /><br />
<br />
</p>
<h2>4、创建表空间</h2>
<p>打开sqlplus工具：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">sqlplus&nbsp;</span> <span style="color: #808080">/</span><span style="color: #000000">nolog</span> </div>
<p>&nbsp;连接数据库：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">conn&nbsp;</span><span style="color: #808080">/</span><span style="color: #0000ff">as</span> <span style="color: #000000">sysdba</span></div>
<p>&nbsp;创建表空间：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #0000ff">create tablespace camds datafile 'D:\oracle\product\10.2.0\oradata\camds\camds.dbf' size 200m autoextend on next 10m maxsize unlimited;</span></div>
<br />
<h2>5、创建新用户</h2>
运行&#8220;P/L SQL Developer&#8221;工具，以DBA（用户名：System）的身份登录：<br />
<h3>1）新建&#8220;User（用户）： </h3>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0012.jpg" border="0" /> <br />
<h3>2）设置用户名、口令、默认表空间（使用上面新建的表空间）和临时表空间：<br />
</h3>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0013.jpg" border="0" /> <br />
<h3>3）设置角色权限：</h3>
<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0014.jpg" border="0" /> <br />
<h3>4）设置&#8221;系统权限&#8220;：</h3>
<br />
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0015.jpg" border="0" /><br />
<h3>5）点击应用后，【应用】按钮变灰，新用户创建成功：</h3>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0016.jpg" border="0" /><br />
<br />
<h3>6）新用户登录测试：</h3>
<p>输入新用户的&#8220;用户名/口令&#8221;：</p>
<p><img height="292" alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0017.jpg" width="441" border="0" /><br />
新用户&#8220;testcamds&#8221;成功登陆：</p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0018.jpg" border="0" /><br />
<h2>6、导入导出数据库</h2>
先运行cmd命令，进入命令行模式，转到下面的目录：D:"oracle"product"10.2.0"db_1"BIN【该目录下有exp.exe文件】<br />
<h3>1）导入</h3>
<p>命令语法：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">imp&nbsp;userid</span> <span style="color: #808080">/</span> <span style="color: #000000">pwd</span> <span style="color: #008000">@sid</span> <span style="color: #000000">&nbsp;</span> <span style="color: #0000ff">file</span> <span style="color: #808080">=</span> <span style="color: #000000">path</span> <span style="color: #808080">/</span> <span style="color: #0000ff">file</span> <span style="color: #000000">&nbsp;fromuser</span> <span style="color: #808080">=</span> <span style="color: #000000">testcamds&nbsp;touser</span> <span style="color: #808080">=</span> <span style="color: #000000">userid&nbsp;</span> </div>
<p>命令实例：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #000000">&nbsp;imp&nbsp;testcamds</span> <span style="color: #808080">/</span> <span style="font-weight: bold; color: #800000">123</span> <span style="color: #008000">@camds</span> <span style="color: #000000">&nbsp;</span> <span style="color: #0000ff">file</span> <span style="color: #808080">=</span> <span style="color: #000000">c:"testcamds&nbsp;fromuser</span> <span style="color: #808080">=</span> <span style="color: #000000">testcamds&nbsp;touser</span> <span style="color: #808080">=</span> <span style="color: #000000">testcamds&nbsp;</span> </div>
<p>导入结果：</p>
<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0019.jpg" border="0" /><br />
<br />
<h3>2）导出：</h3>
<p>命令语法：<br />
</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #ff00ff">exp</span> <span style="color: #000000">&nbsp;userid</span> <span style="color: #808080">/</span> <span style="color: #000000">pwd</span> <span style="color: #008000">@sid</span> <span style="color: #000000">&nbsp;</span> <span style="color: #0000ff">file</span> <span style="color: #808080">=</span> <span style="color: #000000">path</span> <span style="color: #808080">/</span> <span style="color: #0000ff">file</span> <span style="color: #000000">&nbsp;owner</span> <span style="color: #808080">=</span> <span style="color: #000000">userid&nbsp;&nbsp;</span> </div>
<p>命令实例：</p>
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><span style="color: #ff00ff">exp</span> <span style="color: #000000">&nbsp;testcamds</span> <span style="color: #808080">/</span> <span style="font-weight: bold; color: #800000">123</span> <span style="color: #008000">@camdsora</span> <span style="color: #000000">&nbsp;</span> <span style="color: #0000ff">file</span> <span style="color: #808080">=</span> <span style="color: #000000">c:"testcamds&nbsp;owner</span> <span style="color: #808080">=</span> <span style="color: #000000">testcamds&nbsp;</span> </div>
<p>&nbsp;导入结果：</p>
<p>&nbsp;<img alt="" src="http://www.blogjava.net/images/blogjava_net/coderdream/20091018_oracle/snap0020.jpg" border="0" /></p>
<img src ="http://www.blogjava.net/coderdream/aggbug/298760.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/coderdream/" target="_blank">CoderDream</a> 2009-10-18 20:13 <a href="http://www.blogjava.net/coderdream/archive/2009/10/18/298760.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Oracle经验</title><link>http://www.blogjava.net/coderdream/archive/2009/06/25/284058.html</link><dc:creator>CoderDream</dc:creator><author>CoderDream</author><pubDate>Thu, 25 Jun 2009 01:15:00 GMT</pubDate><guid>http://www.blogjava.net/coderdream/archive/2009/06/25/284058.html</guid><wfw:comment>http://www.blogjava.net/coderdream/comments/284058.html</wfw:comment><comments>http://www.blogjava.net/coderdream/archive/2009/06/25/284058.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/coderdream/comments/commentRss/284058.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/coderdream/services/trackbacks/284058.html</trackback:ping><description><![CDATA[1、实例不能启动！<br />
症状：&#8220;计算机管理&#8221;-》&#8220;服务和应用程序&#8221;-》&#8220;服务&#8221;-》&#8220;OracleOraDb10g_camdsTNSListener&#8221;的启动类型为&#8220;自动&#8221;，但是状态为空（已停止），手工启动，状态变为&#8220;已启动&#8221;，1～5秒后状态变回&#8220;已停止&#8221;，数据库不能正常使用；<br />
解决方法：【开始】-》【程序】-》【Oracle - OraDb10g_camds】-》【Configuration and Migration Tools】-》【Net Configuration Assistant】，重新配置一下刚才的【监听程序配置】，然后刷新服务就可以看到服务正常&#8220;自动&#8221;启动了。<br />
<br />
<img src ="http://www.blogjava.net/coderdream/aggbug/284058.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/coderdream/" target="_blank">CoderDream</a> 2009-06-25 09:15 <a href="http://www.blogjava.net/coderdream/archive/2009/06/25/284058.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>MySQL 建表语法</title><link>http://www.blogjava.net/coderdream/archive/2007/08/17/137642.html</link><dc:creator>CoderDream</dc:creator><author>CoderDream</author><pubDate>Fri, 17 Aug 2007 09:11:00 GMT</pubDate><guid>http://www.blogjava.net/coderdream/archive/2007/08/17/137642.html</guid><wfw:comment>http://www.blogjava.net/coderdream/comments/137642.html</wfw:comment><comments>http://www.blogjava.net/coderdream/archive/2007/08/17/137642.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/coderdream/comments/commentRss/137642.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/coderdream/services/trackbacks/137642.html</trackback:ping><description><![CDATA[1、最简单的：<br><br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Courier; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;t1(<br>&nbsp;&nbsp;&nbsp;id&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000">&nbsp;not&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;name&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">char</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br>);</span></div>
<br>2、带主键的：<br><br>a：<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Courier; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;t1(<br>&nbsp;&nbsp;&nbsp;id&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000">&nbsp;not&nbsp;</span><span style="COLOR: #0000ff">null primary key</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;name&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">char</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br>);</span></div>
<br>b：复合主键<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Courier; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;t1(<br>&nbsp;&nbsp;&nbsp;id&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000">&nbsp;not&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;name&nbsp;char</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">),<br><font color=#0000ff>&nbsp;&nbsp;&nbsp;primary key (id,name)</font><br>);</span></div>
<br>3、带默认值的：<br><br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; FONT-FAMILY: Courier; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;t1(<br>&nbsp;&nbsp;&nbsp;id&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000">&nbsp;not&nbsp;</span><span style="COLOR: #0000ff">null default 0 primary key</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;name&nbsp;char</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">) default '1'<br>);</span></div>
<br>转贴的：<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;PLAYERS<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(PLAYERNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">PRIMARY</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NAME&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">15</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;INITIALS&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">3</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BIRTH_DATE&nbsp;&nbsp;&nbsp;&nbsp;DATE,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;SEX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">1</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(SEX&nbsp;</span><span style="COLOR: #808080">IN</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">M</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">F</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JOINED&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">SMALLINT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(JOINED&nbsp;</span><span style="COLOR: #808080">&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #800000">1969</span><span style="COLOR: #000000">)&nbsp;,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;STREET&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">30</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HOUSENO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">4</span><span style="COLOR: #000000">),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;POSTCODE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">6</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(POSTCODE&nbsp;</span><span style="COLOR: #808080">LIKE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">______</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TOWN&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">10</span><span style="COLOR: #000000">)&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PHONENO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">13</span><span style="COLOR: #000000">),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LEAGUENO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">4</span><span style="COLOR: #000000">))<br>;<br></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;TEAMS<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(TEAMNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">PRIMARY</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PLAYERNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DIVISION&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">6</span><span style="COLOR: #000000">)&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(DIVISION&nbsp;</span><span style="COLOR: #808080">IN</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">first</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">second</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">FOREIGN</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;(PLAYERNO)&nbsp;</span><span style="COLOR: #0000ff">REFERENCES</span><span style="COLOR: #000000">&nbsp;PLAYERS&nbsp;(PLAYERNO))<br>;<br></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;MATCHES<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(MATCHNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">PRIMARY</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TEAMNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PLAYERNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WON&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">SMALLINT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(WON&nbsp;</span><span style="COLOR: #808080">BETWEEN</span><span style="COLOR: #000000">&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #800000">0</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #800000">3</span><span style="COLOR: #000000">),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LOST&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">SMALLINT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(LOST&nbsp;</span><span style="COLOR: #808080">BETWEEN</span><span style="COLOR: #000000">&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #800000">0</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #800000">3</span><span style="COLOR: #000000">),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">FOREIGN</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">&nbsp;(TEAMNO)&nbsp;</span><span style="COLOR: #0000ff">REFERENCES</span><span style="COLOR: #000000">&nbsp;TEAMS&nbsp;(TEAMNO),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">FOREIGN</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">&nbsp;(PLAYERNO)&nbsp;</span><span style="COLOR: #0000ff">REFERENCES</span><span style="COLOR: #000000">&nbsp;PLAYERS&nbsp;(PLAYERNO))<br>;<br></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;PENALTIES<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(PAYMENTNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">PRIMARY</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PLAYERNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PAYMENT_DATE&nbsp;DATE&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(PAYMENT_DATE&nbsp;</span><span style="COLOR: #808080">&gt;=</span><span style="COLOR: #000000">&nbsp;DATE(</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">1969-12-31</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AMOUNT&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">DECIMAL</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">7</span><span style="COLOR: #000000">,</span><span style="FONT-WEIGHT: bold; COLOR: #800000">2</span><span style="COLOR: #000000">)&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">&nbsp;(AMOUNT&nbsp;</span><span style="COLOR: #808080">&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #800000">0</span><span style="COLOR: #000000">),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">FOREIGN</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">&nbsp;(PLAYERNO)&nbsp;</span><span style="COLOR: #0000ff">REFERENCES</span><span style="COLOR: #000000">&nbsp;PLAYERS&nbsp;(PLAYERNO))<br>;<br></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000">&nbsp;COMMITTEE_MEMBERS<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(PLAYERNO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">INTEGER</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;BEGIN_DATE&nbsp;&nbsp;&nbsp;&nbsp;DATE&nbsp;</span><span style="COLOR: #808080">NOT</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">NULL</span><span style="COLOR: #000000">,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;END_DATE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DATE,<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;POSITION&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">CHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">PRIMARY</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;(PLAYERNO,&nbsp;BEGIN_DATE),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">FOREIGN</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;(PLAYERNO)&nbsp;</span><span style="COLOR: #0000ff">REFERENCES</span><span style="COLOR: #000000">&nbsp;PLAYERS&nbsp;(PLAYERNO),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(BEGIN_DATE&nbsp;</span><span style="COLOR: #808080">&lt;</span><span style="COLOR: #000000">&nbsp;END_DATE),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">CHECK</span><span style="COLOR: #000000">(BEGIN_DATE&nbsp;</span><span style="COLOR: #808080">&gt;=</span><span style="COLOR: #000000">&nbsp;DATE(</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">1990-01-01</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)))<br>;<br></span></div>
<img src ="http://www.blogjava.net/coderdream/aggbug/137642.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/coderdream/" target="_blank">CoderDream</a> 2007-08-17 17:11 <a href="http://www.blogjava.net/coderdream/archive/2007/08/17/137642.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>2007.11.24.网摘</title><link>http://www.blogjava.net/coderdream/archive/2006/11/24/83393.html</link><dc:creator>CoderDream</dc:creator><author>CoderDream</author><pubDate>Fri, 24 Nov 2006 14:56:00 GMT</pubDate><guid>http://www.blogjava.net/coderdream/archive/2006/11/24/83393.html</guid><wfw:comment>http://www.blogjava.net/coderdream/comments/83393.html</wfw:comment><comments>http://www.blogjava.net/coderdream/archive/2006/11/24/83393.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/coderdream/comments/commentRss/83393.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/coderdream/services/trackbacks/83393.html</trackback:ping><description><![CDATA[01、<a href="http://www.duduwolf.com/post/320.asp">给应届本科生出的招聘题(技术类)<br /></a>02、<a href="http://www-128.ibm.com/developerworks/cn/db2/db2mag/dbt11q4/dbt11q4_f4/">DB2 9 for z/OS 迈向颠峰<br /></a>03、<a href="http://dev.csdn.net/author/wildhorseli/0b84be6a1ed0473bb1d22714071b45d4.html">JavaScript学习小结<br /></a>04、<a href="http://blog.csdn.net/Senton/archive/2006/11/14/1382617.aspx"><u><font color="#800080">30分钟内创建Web Service</font></u><br /></a>05、<u><font color="#800080"><a href="http://blog.csdn.net/Senton/archive/2006/11/14/1382608.aspx">Java中常见的异常</a></font></u><br />06、<a class="singleposttitle" id="viewpost1_TitleUrl" href="/dyerac/archive/2006/11/24/dollyCal.html">自己做的多功能计算器，嘿嘿</a><br />07、<a id="viewpost1_TitleUrl" href="/itspy/archive/2006/11/24/83275.html">JAVA与C++的一点比较</a><br />08、<a class="postTitle2" id="viewpost1_TitleUrl" href="/soddabao/archive/2006/11/24/83134.html">weblogic与axis之间向冲突</a><br />09、<a id="viewpost1_TitleUrl" href="/soft/archive/2006/11/24/psoft.html">mysql 常用操作命令</a><br />10、<a id="viewpost1_TitleUrl" href="/zqli/archive/2006/11/24/83256.html">[转]EE系统标准（JAVA EE5） </a><br />11、<a class="singleposttitle" id="viewpost1_TitleUrl" href="/beansoft/archive/2006/11/24/83243.html">推荐一个Eclipse插件站点: http://www.easyeclipse.org</a><br />12、<a class="postTitle2" id="viewpost1_TitleUrl" href="/kan314jp/archive/2006/11/24/83197.html">在Java中应用设计模式--Singleton</a><br />13、<a class="postTitle2" id="viewpost1_TitleUrl" href="/kan314jp/archive/2006/11/24/83199.html">对于模式的“十大误解”</a><br />14、<a class="postTitle2" id="viewpost1_TitleUrl" href="/kan314jp/archive/2006/11/24/83198.html">在Java中应用设计模式--Factory Method</a><br />15、<a class="postTitle2" id="viewpost1_TitleUrl" href="/badboyryan/archive/2006/11/24/83191.html">使用 Oracle JDeveloper 构建您的第一个 GWT Web 应用程序</a><br />16、<a class="postTitle2" id="viewpost1_TitleUrl" href="/hongjunli/archive/2006/11/24/83356.html">不得不减少Blog更新的次数了</a><br />17、<a class="singleposttitle" id="viewpost1_TitleUrl" href="/jaunt/archive/2006/11/24/83354.html">JavaScript中的Boolean类型</a><br />18、<a id="viewpost1_TitleUrl" href="/dreamstone/archive/2006/11/24/83351.html">mysql 基本知识和phpMyAdmin的配制Faq</a><br />19、<a class="postTitle2" id="viewpost1_TitleUrl" href="/larry/archive/2006/11/24/83353.html">几个有用的javascript代码（动态增删表格）</a><br />20、<a id="viewpost1_TitleUrl" href="/fireice/archive/2006/11/24/83340.html">如何有效的结束项目----对某税务MIS系统项目的经验总结</a><br />21、<a id="viewpost1_TitleUrl" href="/fireice/archive/2006/11/24/83338.html">在J2EE应用中安装及设置FCKeditor</a><br />22、<a id="viewpost1_TitleUrl" href="/xixuui/archive/2006/11/24/83329.html">如何测试自定义断言</a><br />23、<a class="postTitle2" id="viewpost1_TitleUrl" href="/shmily432685/archive/2006/11/24/83327.html">我个人认为做好Project Manager，需要具备的能力</a><br />24、<a class="singleposttitle" id="viewpost1_TitleUrl" href="/youxia/archive/2006/11/24/83377.html">使用Eclipse RCP进行桌面程序开发（三）：视图和透视图</a><br />25、<a class="postTitle2" id="viewpost1_TitleUrl" href="/robbie/archive/2006/11/24/83383.html">格式化Hibernate的SQL输出语句</a><img src ="http://www.blogjava.net/coderdream/aggbug/83393.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/coderdream/" target="_blank">CoderDream</a> 2006-11-24 22:56 <a href="http://www.blogjava.net/coderdream/archive/2006/11/24/83393.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用SQL语句技法</title><link>http://www.blogjava.net/coderdream/archive/2006/10/08/73904.html</link><dc:creator>CoderDream</dc:creator><author>CoderDream</author><pubDate>Sun, 08 Oct 2006 12:58:00 GMT</pubDate><guid>http://www.blogjava.net/coderdream/archive/2006/10/08/73904.html</guid><wfw:comment>http://www.blogjava.net/coderdream/comments/73904.html</wfw:comment><comments>http://www.blogjava.net/coderdream/archive/2006/10/08/73904.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/coderdream/comments/commentRss/73904.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/coderdream/services/trackbacks/73904.html</trackback:ping><description><![CDATA[
		<br />　　下列语句部分是Mssql语句，不可以在access中使用。 
<p></p><p>　　SQL分类： </p><p>　　DDL—数据定义语言(CREATE，ALTER，DROP，DECLARE) <br />　　DML—数据操纵语言(SELECT，DELETE，UPDATE，INSERT) <br />　　DCL—数据控制语言(GRANT，REVOKE，COMMIT，ROLLBACK)</p><p>　　首先,简要介绍基础语句：</p><p>　　1、说明：创建数据库</p><p>CREATE DATABASE database-name </p><p>　　2、说明：删除数据库</p><p>drop database dbname</p><p>　　3、说明：备份sql server</p><p>　　--- 创建 备份数据的 device</p><p>USE master<br />EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'</p><p>　　--- 开始 备份</p><p>BACKUP DATABASE pubs TO testBack </p><p>　　4、说明：创建新表</p><p>create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)</p><p>　　根据已有的表创建新表： </p><p>A：create table tab_new like tab_old (使用旧表创建新表)<br />B：create table tab_new as select col1,col2… from tab_old definition only</p><p>　　5、说明：</p><p>　　删除新表：drop table tabname </p><p>　　6、说明：</p><p>　　增加一个列：Alter table tabname add column col type</p><p>　　注：列增加后将不能删除。DB2中列加上后数据类型也不能改变，唯一能改变的是增加varchar类型的长度。</p><p>　　7、说明：</p><p>　　添加主键：Alter table tabname add primary key(col) </p><p>　　说明：</p><p>　　删除主键：Alter table tabname drop primary key(col)</p><p>　　8、说明：</p><p>　　创建索引：create [unique] index idxname on tabname(col….) </p><p>　　删除索引：drop index idxname</p><p>　　注：索引是不可更改的，想更改必须删除重新建。</p><p>　　9、说明：</p><p>　　创建视图：create view viewname as select statement</p><p>　　删除视图：drop view viewname<br /></p><table cellspacing="0" cellpadding="0" width="98%" align="center" border="0"><tbody><tr><td class="article" width="100%" height="62"><p></p><p>　　10、说明：几个简单的基本的sql语句</p><p>　　选择：select * from table1 where 范围</p><p>　　插入：insert into table1(field1,field2) values(value1,value2)</p><p>　　删除：delete from table1 where 范围</p><p>　　更新：update table1 set field1=value1 where 范围</p><p>　　查找：select * from table1 where field1 like ’%value1%’ ---like的语法很精妙，查资料!</p><p>　　排序：select * from table1 order by field1,field2 [desc]</p><p>　　总数：select count * as totalcount from table1</p><p>　　求和：select sum(field1) as sumvalue from table1</p><p>　　平均：select avg(field1) as avgvalue from table1</p><p>　　最大：select max(field1) as maxvalue from table1</p><p>　　最小：select min(field1) as minvalue from table1</p><p>　　11、说明：几个高级查询运算词</p><p>　　A： UNION 运算符 </p><p>　　UNION 运算符通过组合其他两个结果表（例如 TABLE1 和 TABLE2）并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时（即 UNION ALL），不消除重复行。两种情况下，派生表的每一行不是来自 TABLE1 就是来自 TABLE2。</p><p>　　B： EXCEPT 运算符 </p><p>　　EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL)，不消除重复行。 </p><p>　　C： INTERSECT 运算符</p><p>　　INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL)，不消除重复行。</p><p>　　注：使用运算词的几个查询结果行必须是一致的。</p><p>　　12、说明：使用外连接 </p><p>　　A、left outer join： </p><p>　　左外连接（左连接）：结果集几包括连接表的匹配行，也包括左连接表的所有行。 </p><p>SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c</p><p>　　B：right outer join: </p><p>　　右外连接(右连接)：结果集既包括连接表的匹配连接行，也包括右连接表的所有行。</p><p>　　C：full outer join： </p><p>　　全外连接：不仅包括符号连接表的匹配行，还包括两个连接表中的所有记录。</p><p>　　其次，大家来看一些不错的sql语句</p><p>　　1、说明：复制表(只复制结构,源表名：a 新表名：b) (Access可用)</p><p>　　法一：select * into b from a where 1&lt;&gt;1</p><p>　　法二：select top 0 * into b from a</p><p>　　2、说明：拷贝表(拷贝数据,源表名：a 目标表名：b) (Access可用)</p><p>insert into b(a, b, c) select d,e,f from b;</p><p>　　3、说明：跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)</p><p>insert into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件</p><p>　　例子：..from b in '"&amp;Server.MapPath(".")&amp;"\data.mdb" &amp;"' where..</p><p>　　4、说明：子查询(表名1：a 表名2：b)</p><p>select a,b,c from a where a IN (select d from b ) 或者: select a,b,c from a where a IN (1,2,3)</p><p>　　5、说明：显示文章、提交人和最后回复时间</p><p>select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b<br /><br /></p><p>　　6、说明：外连接查询(表名1：a 表名2：b)</p><p>select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c</p><p>　　7、说明：在线视图查询(表名1：a )</p><p>select * from (SELECT a,b,c FROM a) T where t.a &gt; 1;</p><p>　　8、说明：between的用法,between限制查询数据范围时包括了边界值,not between不包括</p><p>select * from table1 where time between time1 and time2</p><p>select a,b,c, from table1 where a not between 数值1 and 数值2</p><p>　　9、说明：in 的使用方法</p><p>select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’)</p><p>　　10、说明：两张关联表，删除主表中已经在副表中没有的信息 </p><p>delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )</p><p>　　11、说明：四表联查问题：</p><p>select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....</p><p>　　12、说明：日程安排提前五分钟提醒</p><p>SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate())&gt;5</p><p>　　13、说明：一条sql 语句搞定数据库分页</p><p>select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段</p><p>　　14、说明：前10条记录</p><p>select top 10 * form table1 where 范围</p><p>　　15、说明：选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)</p><p>select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b)</p><p>　　16、说明：包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表</p><p>(select a from tableA ) except (select a from tableB) except (select a from tableC)</p><p>　　17、说明：随机取出10条数据</p><p>select top 10 * from tablename order by newid()</p><p>　　18、说明：随机选择记录</p><p>select newid()</p><p>　　19、说明：删除重复记录</p><p>Delete from tablename where id not in (select max(id) from tablename group by col1,col2,...)</p><p>　　20、说明：列出数据库里所有的表名</p><p>select name from sysobjects where type='U' <br /></p><p>　　21、说明：列出表里的所有的</p><p>select name from syscolumns where id=object_id('TableName')</p><p>　　22、说明：列示type、vender、pcs字段，以type字段排列，case可以方便地实现多重选择，类似select 中的case。</p><p>select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type</p><p>　　显示结果：</p><p>type    vender pcs<br />电脑 A 1<br />电脑 A 1<br />光盘 B 2<br />光盘 A 2<br />手机 B 3<br />手机 C 3</p><p>　　23、说明：初始化表table1</p><p>TRUNCATE TABLE table1</p><p>　　24、说明：选择从10到15的记录</p><p>select top 5 * from (select top 15 * from table order by id asc) table_别名 order by id desc</p><p>　　随机选择数据库记录的方法（使用Randomize函数，通过SQL语句实现）</p><p>　　对存储在数据库中的数据来说，随机数特性能给出上面的效果，但它们可能太慢了些。你不能要求ASP“找个随机数”然后打印出来。实际上常见的解决方案是建立如下所示的循环：</p><p>Randomize <br />RNumber = Int(Rnd*499) +1 <br />　<br />While Not objRec.EOF <br />If objRec("ID") = RNumber THEN <br />... 这里是执行脚本 ... <br />end if <br />objRec.MoveNext <br />Wend </p><p>　　这很容易理解。首先，你取出1到500范围之内的一个随机数（假设500就是数据库内记录的总数）。然后，你遍历每一记录来测试ID 的值、检查其是否匹配RNumber。满足条件的话就执行由THEN 关键字开始的那一块代码。假如你的RNumber 等于495，那么要循环一遍数据库花的时间可就长了。虽然500这个数字看起来大了些，但相比更为稳固的企业解决方案这还是个小型数据库了，后者通常在一个数据库内就包含了成千上万条记录。这时候不就死定了？ </p><p>　　采用SQL，你就可以很快地找出准确的记录并且打开一个只包含该记录的recordset，如下所示：</p><p>Randomize <br />RNumber = Int(Rnd*499) + 1 <br />　<br />SQL = "SELECT * FROM Customers WHERE ID = " &amp; RNumber <br />　<br />set objRec = ObjConn.Execute(SQL) <br />Response.WriteRNumber &amp; " = " &amp; objRec("ID") &amp; " " &amp; objRec("c_email")</p><p>　　不必写出RNumber 和ID，你只需要检查匹配情况即可。只要你对以上代码的工作满意，你自可按需操作“随机”记录。Recordset没有包含其他内容，因此你很快就能找到你需要的记录这样就大大降低了处理时间。<br /><br /></p><table cellspacing="0" cellpadding="0" width="98%" align="center" border="0"><tbody><tr><td class="article" width="100%" height="62"><p></p><p>　　再谈随机数</p><p>　　现在你下定决心要榨干Random 函数的最后一滴油，那么你可能会一次取出多条随机记录或者想采用一定随机范围内的记录。把上面的标准Random 示例扩展一下就可以用SQL应对上面两种情况了。</p><p>　　为了取出几条随机选择的记录并存放在同一recordset内，你可以存储三个随机数，然后查询数据库获得匹配这些数字的记录： </p><p>　　SQL = "SELECT * FROM Customers WHERE ID = " &amp; RNumber &amp; " OR ID = " &amp; RNumber2 &amp; " OR ID = " &amp; RNumber3 </p><p>　　假如你想选出10条记录（也许是每次页面装载时的10条链接的列表），你可以用BETWEEN 或者数学等式选出第一条记录和适当数量的递增记录。这一操作可以通过好几种方式来完成，但是 SELECT 语句只显示一种可能（这里的ID 是自动生成的号码）： <br />SQL = "SELECT * FROM Customers WHERE ID BETWEEN " &amp; RNumber &amp; " AND " &amp; RNumber &amp; "+ 9" </p><p>　　注意：以上代码的执行目的不是检查数据库内是否有9条并发记录。</p><p>　　随机读取若干条记录，测试过</p><p>Access语法：SELECT top 10 * From 表名 ORDER BY Rnd(id)<br />Sql server:select top n * from 表名 order by newid()<br />mysql select * From 表名 Order By rand() Limit n</p><p>　　Access左连接语法(最近开发要用左连接,Access帮助什么都没有,网上没有Access的SQL说明,只有自己测试, 现在记下以备后查)</p><p>　　语法 select table1.fd1,table1,fd2,table2.fd2 From table1 left join table2 on table1.fd1,table2.fd1 where ...</p><p>　　使用SQL语句 用...代替过长的字符串显示</p><p>　　语法：</p><p>　　SQL数据库：select case when len(field)&gt;10 then left(field,10)+'...' else field end as news_name,news_id from tablename<br />　　Access数据库：SELECT iif(len(field)&gt;2,left(field,2)+'...',field) FROM tablename; </p><p>　　Conn.Execute说明</p><p>　　Execute方法</p><p>　　该方法用于执行SQL语句。根据SQL语句执行后是否返回记录集，该方法的使用格式分为以下两种：</p><p>　　1．执行SQL查询语句时，将返回查询得到的记录集。用法为：</p><p>　　Set 对象变量名=连接对象.Execute("SQL 查询语言")</p><p>　　Execute方法调用后，会自动创建记录集对象，并将查询结果存储在该记录对象中，通过Set方法，将记录集赋给指定的对象保存，以后对象变量就代表了该记录集对象。</p><p>　　2．执行SQL的操作性语言时，没有记录集的返回。此时用法为：</p><p>　　连接对象.Execute "SQL 操作性语句" [, RecordAffected][, Option]</p><p>　　·RecordAffected 为可选项，此出可放置一个变量，SQL语句执行后，所生效的记录数会自动保存到该变量中。通过访问该变量，就可知道SQL语句队多少条记录进行了操作。</p><p>　　·Option 可选项，该参数的取值通常为adCMDText，它用于告诉ADO，应该将Execute方法之后的第一个字符解释为命令文本。通过指定该参数，可使执行更高效。</p><p>　　·BeginTrans、RollbackTrans、CommitTrans方法</p><p>　　这三个方法是连接对象提供的用于事务处理的方法。BeginTrans用于开始一个事物；RollbackTrans用于回滚事务；CommitTrans用于提交所有的事务处理结果，即确认事务的处理。</p><p>　　事务处理可以将一组操作视为一个整体，只有全部语句都成功执行后，事务处理才算成功；若其中有一个语句执行失败，则整个处理就算失败，并恢复到处里前的状态。</p><p>　　BeginTrans和CommitTrans用于标记事务的开始和结束，在这两个之间的语句，就是作为事务处理的语句。判断事务处理是否成功，可通过连接对象的Error集合来实现，若Error集合的成员个数不为0，则说明有错误发生，事务处理失败。Error集合中的每一个Error对象，代表一个错误信息。</p></td></tr></tbody></table><br /><br /><br /><br /><br /><br /><br /></td></tr></tbody></table><img src ="http://www.blogjava.net/coderdream/aggbug/73904.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/coderdream/" target="_blank">CoderDream</a> 2006-10-08 20:58 <a href="http://www.blogjava.net/coderdream/archive/2006/10/08/73904.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>自动生成新的Id</title><link>http://www.blogjava.net/coderdream/archive/2006/09/26/71922.html</link><dc:creator>CoderDream</dc:creator><author>CoderDream</author><pubDate>Tue, 26 Sep 2006 03:39:00 GMT</pubDate><guid>http://www.blogjava.net/coderdream/archive/2006/09/26/71922.html</guid><wfw:comment>http://www.blogjava.net/coderdream/comments/71922.html</wfw:comment><comments>http://www.blogjava.net/coderdream/archive/2006/09/26/71922.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/coderdream/comments/commentRss/71922.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/coderdream/services/trackbacks/71922.html</trackback:ping><description><![CDATA[
		<p>在数据库中，某些表的字段很长，而且是自增的，但是由于有前缀，不能直接使用INT类型。<br /><br />我们可以通过编写存储过程来实现自动生成Id的功能：</p>
		<p>一、首先建立数据库和表，并向其中插入一条数据：</p>
		<div align="center">
				<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 91.35%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; HEIGHT: 550px; BACKGROUND-COLOR: #eeeeee">
						<div align="left">
								<span style="COLOR: #008080"> 1</span> <span style="COLOR: #0000ff">Use</span><span style="COLOR: #000000"> Master<br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #000000"></span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> =============================================</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> Basic Create Database Template</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> =============================================</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">IF</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">EXISTS</span><span style="COLOR: #000000"> (</span><span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">*</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #000000">       </span><span style="COLOR: #0000ff">FROM</span><span style="COLOR: #000000">   master..sysdatabases <br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #000000">       </span><span style="COLOR: #0000ff">WHERE</span><span style="COLOR: #000000">  name </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> N</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">test_db</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">DROP</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">DATABASE</span><span style="COLOR: #000000"> test_db<br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">DATABASE</span><span style="COLOR: #000000"> test_db<br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">15</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">16</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">17</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">Use</span><span style="COLOR: #000000"> test_db;<br /></span><span style="COLOR: #008080">18</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">19</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">20</span> <span style="COLOR: #000000"></span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> =============================================</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">21</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> Create table basic template</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">22</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> =============================================</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">23</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">IF</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">EXISTS</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000"> name <br /></span><span style="COLOR: #008080">24</span> <span style="COLOR: #000000">      </span><span style="COLOR: #0000ff">FROM</span><span style="COLOR: #000000">      sysobjects <br /></span><span style="COLOR: #008080">25</span> <span style="COLOR: #000000">      </span><span style="COLOR: #0000ff">WHERE</span><span style="COLOR: #000000">  name </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> N</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">T_User</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">26</span> <span style="COLOR: #000000">      </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">      type </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">U</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">27</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">DROP</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000"> test_table<br /></span><span style="COLOR: #008080">28</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">29</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">30</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">TABLE</span><span style="COLOR: #000000"> T_User (<br /></span><span style="COLOR: #008080">31</span> <span style="COLOR: #000000">userId </span><span style="FONT-WEIGHT: bold; COLOR: #000000">VARCHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">50</span><span style="COLOR: #000000">) </span><span style="COLOR: #0000ff">PRIMARY</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">KEY</span><span style="COLOR: #000000">, <br /></span><span style="COLOR: #008080">32</span> <span style="COLOR: #000000">userName </span><span style="FONT-WEIGHT: bold; COLOR: #000000">VARCHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">50</span><span style="COLOR: #000000">))<br /></span><span style="COLOR: #008080">33</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">34</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">35</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">INSERT</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">INTO</span><span style="COLOR: #000000"> T_User </span><span style="COLOR: #0000ff">VALUES</span><span style="COLOR: #000000">(</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">User0001</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">, </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">xulin</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">36</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span></div>
				</div>
		</div>
		<br />二、编写自动生成Id的存储过程：<br /><br /><div align="center"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 91.35%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; HEIGHT: 461px; BACKGROUND-COLOR: #eeeeee"><div align="left"><span style="COLOR: #008080"> 1</span> <span style="COLOR: #0000ff">IF</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">EXISTS</span><span style="COLOR: #000000"> (</span><span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000"> name <br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #000000">     </span><span style="COLOR: #0000ff">FROM</span><span style="COLOR: #000000">   sysobjects <br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #000000">     </span><span style="COLOR: #0000ff">WHERE</span><span style="COLOR: #000000">  name </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> N</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">proc_getNewID</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #000000">     </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">       type </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">P</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #000000">   </span><span style="COLOR: #0000ff">DROP</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">PROCEDURE</span><span style="COLOR: #000000"> proc_getNewID<br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">PROCEDURE</span><span style="COLOR: #000000"> proc_getNewID<br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #000000">    </span><span style="COLOR: #008000">@maxId</span><span style="COLOR: #000000">             </span><span style="FONT-WEIGHT: bold; COLOR: #000000">VARCHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">),                      </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 传人的最大Id值</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">    </span><span style="COLOR: #008000">@prefix</span><span style="COLOR: #000000">             </span><span style="FONT-WEIGHT: bold; COLOR: #000000">VARCHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">8</span><span style="COLOR: #000000">),                        </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 前缀</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">    </span><span style="COLOR: #008000">@suffix_len</span><span style="COLOR: #000000">      </span><span style="FONT-WEIGHT: bold; COLOR: #000000">INT</span><span style="COLOR: #000000">,                                          </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 后缀长度</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">    </span><span style="COLOR: #008000">@newId</span><span style="COLOR: #000000">            </span><span style="FONT-WEIGHT: bold; COLOR: #000000">VARCHAR</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">) output         </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 输出参数</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">AS</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">DECLARE</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000">  </span><span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">15</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">SET</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff00ff">right</span><span style="COLOR: #000000">(</span><span style="COLOR: #008000">@maxID</span><span style="COLOR: #000000">,</span><span style="COLOR: #008000">@suffix_len</span><span style="COLOR: #000000">)    </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 得到后缀</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">16</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">17</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">IF</span><span style="COLOR: #000000"> (</span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">IS</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">)        </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 如果没有传入MaxId，则生成第一个newId</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">18</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">BEGIN</span><span style="COLOR: #000000">    <br /></span><span style="COLOR: #008080">19</span> <span style="COLOR: #000000">            </span><span style="COLOR: #0000ff">SET</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@newID</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@prefix</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff00ff">REPLICATE</span><span style="COLOR: #000000">(</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">0</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #008000">@suffix_len</span><span style="COLOR: #808080">-</span><span style="FONT-WEIGHT: bold; COLOR: #800000">1</span><span style="COLOR: #000000">)</span><span style="COLOR: #808080">+</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">1</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">20</span> <span style="COLOR: #000000">            </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> REPLICATE()以指定的次数重复字符表达式。然后加1</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">21</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">END</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">22</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">ELSE</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">23</span> <span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">BEGIN</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">24</span> <span style="COLOR: #000000">            </span><span style="COLOR: #0000ff">SET</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">+</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">1</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">25</span> <span style="COLOR: #000000">            </span><span style="COLOR: #0000ff">SET</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@newID</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@prefix</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff00ff">REPLICATE</span><span style="COLOR: #000000">(</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">0</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">, </span><span style="COLOR: #008000">@suffix_len</span><span style="COLOR: #808080">-</span><span style="COLOR: #ff00ff">len</span><span style="COLOR: #000000">(</span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000">)) </span><span style="COLOR: #808080">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">26</span> <span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">END</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">27</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">RETURN</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080">28</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">29</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">go</span></div></div></div><br />编写思路：<br />         通过接收三个参数来生成新的Id，传入参数为：最大ID， 前缀， 后缀大小。<br />         如果输入的ID为空，这生成第一个ID：<br /><div align="center"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 91.9%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; HEIGHT: 102px; BACKGROUND-COLOR: #eeeeee"><div align="left"><span style="COLOR: #008080">1</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 测试代码：</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">2</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">declare</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">3</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">exec</span><span style="COLOR: #000000"> proc_getNewID </span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">PERM</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">,</span><span style="FONT-WEIGHT: bold; COLOR: #800000">4</span><span style="COLOR: #000000">,</span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> output<br /></span><span style="COLOR: #008080">4</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">select</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">5</span> <span style="COLOR: #000000"></span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 输出：PERM0001</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">6</span> <span style="COLOR: #008080"></span></div></div></div><br />         如果输入不为空，这生成最大Id的后一个Id：<br />         
<div align="center"><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 92.83%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; HEIGHT: 117px; BACKGROUND-COLOR: #eeeeee"><div align="left"><span style="COLOR: #008080">1</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 测试代码：</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">2</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">declare</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">3</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">exec</span><span style="COLOR: #000000"> proc_getNewID </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">PERM000011</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">, </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">PERM</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">, </span><span style="FONT-WEIGHT: bold; COLOR: #800000">6</span><span style="COLOR: #000000">, </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"> output<br /></span><span style="COLOR: #008080">4</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">select</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@num</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">5</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">6</span> <span style="COLOR: #000000"></span><span style="COLOR: #008080">--</span><span style="COLOR: #008080">输出：PERM000012</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">7</span> <span style="COLOR: #008080"></span></div></div></div><br />三、在某张表上应用该存储过程：<br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 91.08%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; HEIGHT: 507px; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> =============================================</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> Create procedure insertAssetBudgetState</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 创建 插入用户信息 的存储过程</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #008080">--</span><span style="COLOR: #008080"> =============================================</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">IF</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">EXISTS</span><span style="COLOR: #000000"> (</span><span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000"> name <br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #000000">       </span><span style="COLOR: #0000ff">FROM</span><span style="COLOR: #000000">   sysobjects <br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #000000">       </span><span style="COLOR: #0000ff">WHERE</span><span style="COLOR: #000000">  name </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> N</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">proc_insertUser</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"> <br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #000000">       </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">       type </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">P</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">DROP</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">PROCEDURE</span><span style="COLOR: #000000"> proc_insertUser<br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">CREATE</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">PROCEDURE</span><span style="COLOR: #000000"> proc_insertUser </span><span style="COLOR: #008000">@userName</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">AS</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000">  </span><span style="COLOR: #0000ff">IF</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">exists</span><span style="COLOR: #000000"> (</span><span style="COLOR: #0000ff">select</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">*</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">from</span><span style="COLOR: #000000"> T_User <br /></span><span style="COLOR: #008080">15</span> <span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">where</span><span style="COLOR: #000000"> UserName</span><span style="COLOR: #808080">=</span><span style="COLOR: #008000">@userName</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">16</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">1</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">17</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">ELSE</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">18</span> <span style="COLOR: #000000">   </span><span style="COLOR: #0000ff">declare</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@maxID</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">19</span> <span style="COLOR: #000000">   </span><span style="COLOR: #0000ff">declare</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@newId</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">20</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">20</span> <span style="COLOR: #000000">   </span><span style="COLOR: #0000ff">select</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@maxId</span><span style="COLOR: #808080">=</span><span style="COLOR: #ff00ff">Max</span><span style="COLOR: #000000">(UserId) </span><span style="COLOR: #0000ff">from</span><span style="COLOR: #000000"> T_User<br /></span><span style="COLOR: #008080">21</span> <span style="COLOR: #000000">   </span><span style="COLOR: #0000ff">exec</span><span style="COLOR: #000000"> proc_getNewID </span><span style="COLOR: #008000">@maxId</span><span style="COLOR: #000000">,    </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">User</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">, </span><span style="FONT-WEIGHT: bold; COLOR: #800000">4</span><span style="COLOR: #000000">, </span><span style="COLOR: #008000">@newId</span><span style="COLOR: #000000"> OUTPUT<br /></span><span style="COLOR: #008080">22</span> <span style="COLOR: #000000">        </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 最大ID， 前缀， 后缀大小， 新的ID（输出）</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">23</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">   </span><span style="COLOR: #0000ff">INSERT</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">into</span><span style="COLOR: #000000"> T_User </span><span style="COLOR: #0000ff">values</span><span style="COLOR: #000000">(</span><span style="COLOR: #008000">@newId</span><span style="COLOR: #000000">, </span><span style="COLOR: #008000">@userName</span><span style="COLOR: #000000">)<br /></span><span style="COLOR: #008080">24</span> <span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">0</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">25</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">26</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">GO</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">27</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">28</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">EXEC</span><span style="COLOR: #000000"> proc_insertUser </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">zhangke</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">29</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">EXEC</span><span style="COLOR: #000000"> proc_insertUser </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">chenwenbin</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">30</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">EXEC</span><span style="COLOR: #000000"> proc_insertUser </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">wangchao</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">31</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">EXEC</span><span style="COLOR: #000000"> proc_insertUser </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">yangyan</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">32</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">33</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">*</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">FROM</span><span style="COLOR: #000000"> T_User</span></div><br />输出结果：<br /><img height="119" alt="snap0003.gif" src="http://www.blogjava.net/images/blogjava_net/coderdream/SQLServer2000/060926/snap0003.gif" width="186" border="0" /><br /><br />四、数据类型的自动转换：<br />在编写自动生成Id的存储过程中使用了自动转换：@num=@num+1，这里的@nun为varchar，最后得到int型。<br />Transact-SQL 参考：<br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span> <span style="COLOR: #808080">+</span><span style="COLOR: #000000">（加）<br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #000000">两个数相加。这个加法算术运算符也可以将一个以天为单位的数字加到日期中。<br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #000000">语法<br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #000000">expression </span><span style="COLOR: #808080">+</span><span style="COLOR: #000000"> expression<br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #000000">参数<br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #000000">expression<br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #000000">是数字分类中任何数据类型（</span><span style="FONT-WEIGHT: bold; COLOR: #000000">bit</span><span style="COLOR: #000000"> 数据类型除外）的任何有效 Microsoft® SQL Server™ 表达式。 <br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000">结果类型<br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #000000">返回优先级较高的参数的数据类型。有关更多信息，请参见数据类型的优先顺序。 <br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000"></span></div><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span> <span style="COLOR: #000000">C. 将字符和整型数据类型相加<br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #000000">本示例通过将字符数据类型转换为 </span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000">，将 </span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000"> 数据类型值与字符值相加。如果在 </span><span style="FONT-WEIGHT: bold; COLOR: #000000">char</span><span style="COLOR: #000000"> 字符串中有无效的字符，则 SQL Server 将返回错误。<br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">DECLARE</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@addvalue</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">SET</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@addvalue</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">15</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">125127</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000"> </span><span style="COLOR: #808080">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #008000">@addvalue</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #000000">下面是结果集：<br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #000000"></span><span style="COLOR: #008080">--</span><span style="COLOR: #008080">--------------------- </span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #008080"></span><span style="FONT-WEIGHT: bold; COLOR: #800000">125142</span><span style="COLOR: #000000">                  <br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">1</span><span style="COLOR: #000000"> row(s) affected)<br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">15</span> <span style="COLOR: #000000"></span></div><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span> <span style="COLOR: #000000">数据类型的优先顺序<br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #000000">当两个不同数据类型的表达式用运算符组合后，数据类型的优先顺序规则确定哪种数据类型要向另一种转换。优先顺序低的数据类型向优先顺序高的数据类型转换。如果此转换不是所支持的固有转换，则返回错误。当两个操作数表达式有相同的数据类型时，运算的结果就为那种数据类型。<br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #000000">下面是 Microsoft® SQL Server™ </span><span style="FONT-WEIGHT: bold; COLOR: #800000">2000</span><span style="COLOR: #000000"> 数据类型的优先顺序： <br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #000000">sql_variant（最高）<br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">datetime</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">smalldatetime</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">15</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">float</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">16</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">17</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">18</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">real</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">19</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">20</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">21</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">decimal</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">22</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">23</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">24</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">money</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">25</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">26</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">27</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">smallmoney</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">28</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">29</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">30</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">bigint</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">31</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">32</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">33</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">int</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">34</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">35</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">36</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">smallint</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">37</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">38</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">39</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">tinyint</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">40</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">41</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">42</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">bit</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">43</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">44</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">45</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">ntext</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">46</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">47</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">48</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">text</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">49</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">50</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">51</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">image</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">52</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">53</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">54</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">timestamp</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">55</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">56</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">57</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">uniqueidentifier</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">58</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">59</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">60</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">nvarchar</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">61</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">62</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">63</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">nchar</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">64</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">65</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">66</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">varchar</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">67</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">68</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">69</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">char</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">70</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">71</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">72</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">varbinary</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">73</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">74</span> <span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">75</span> <span style="COLOR: #000000"></span><span style="FONT-WEIGHT: bold; COLOR: #000000">binary</span><span style="COLOR: #000000">（最低） <br /></span><span style="COLOR: #008080">76</span> <span style="COLOR: #000000"></span></div><p>在数据类型的优先顺序中，int 比 varchar 高，计算时回得到int结果。</p><p> </p><img src ="http://www.blogjava.net/coderdream/aggbug/71922.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/coderdream/" target="_blank">CoderDream</a> 2006-09-26 11:39 <a href="http://www.blogjava.net/coderdream/archive/2006/09/26/71922.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[原创]使用SELECT语句查询表、视图的名称、列名、类型</title><link>http://www.blogjava.net/coderdream/archive/2006/09/25/71736.html</link><dc:creator>CoderDream</dc:creator><author>CoderDream</author><pubDate>Mon, 25 Sep 2006 06:49:00 GMT</pubDate><guid>http://www.blogjava.net/coderdream/archive/2006/09/25/71736.html</guid><wfw:comment>http://www.blogjava.net/coderdream/comments/71736.html</wfw:comment><comments>http://www.blogjava.net/coderdream/archive/2006/09/25/71736.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/coderdream/comments/commentRss/71736.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/coderdream/services/trackbacks/71736.html</trackback:ping><description><![CDATA[SQL Server没有Oracle的DESC命令，在Orcale中，我们可以使用：DESC 表名; 来查询表的结构，但SQL Server没有提供这个命令，只有一个sp_help 表名；的存储过程来查看表的所有信息。下面我们来通过SELECT语句查询表的结构。<br /><br />我们新建了一张表后，会将所有与表有关的信息写入该数据库下面的某张系统表， sysobjects, syscolumns, systypes 是其中三张，我们要找的信息就在这三张表里面：<br /><br /><font color="#0000ff" size="5"><strong>1、下面查询所有表的结构</strong></font><br /><strong><font color="#ff0000">注意，这里要加一个条件：SO.status <span style="COLOR: #808080">&gt;=</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">0，否则会将系统的临时表显示出来</span></font></strong><br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span> <span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000">     <br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #000000">    SO.name 表名,<br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #000000">    SC.name 表列名,<br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #000000">    SC.colid 索引,<br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #000000">    ST.name 类型<br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">FROM</span><span style="COLOR: #000000">       <br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #000000">    sysobjects   SO, </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 对象表</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">    syscolumns   SC, </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 列名表</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">    systypes     ST  </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 数据类型表 </span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">WHERE</span><span style="COLOR: #000000">        <br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #000000">    SO.id </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> SC.id <br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000">  </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">   SO.xtype </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">U</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">    </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 类型U表示表，V表示视图</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">  </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">   SO.status </span><span style="COLOR: #808080">&gt;=</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">0</span><span style="COLOR: #000000"><br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #000000">  </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">   SC.xtype </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> ST.xusertype<br /></span><span style="COLOR: #008080">15</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">ORDER</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">BY</span><span style="COLOR: #000000">  <br /></span><span style="COLOR: #008080">16</span> <span style="COLOR: #000000">    SO.name, SC.colorder         </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 按表名、列名排序</span></div><p><br />查询结果：<br /><img height="261" alt="snap0001.gif" src="http://www.blogjava.net/images/blogjava_net/coderdream/SQLServer2000/060925/snap0001.gif" width="512" border="0" /><br /><br /><font color="#0000ff" size="5">2、下面查询某张特定表的结构</font></p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #008080"> 1</span> <span style="COLOR: #0000ff">SELECT</span><span style="COLOR: #000000">     <br /></span><span style="COLOR: #008080"> 2</span> <span style="COLOR: #000000">    SO.name 表名,<br /></span><span style="COLOR: #008080"> 3</span> <span style="COLOR: #000000">    SC.name 表列名,<br /></span><span style="COLOR: #008080"> 4</span> <span style="COLOR: #000000">    SC.colid 索引,<br /></span><span style="COLOR: #008080"> 5</span> <span style="COLOR: #000000">    ST.name 类型<br /></span><span style="COLOR: #008080"> 6</span> <span style="COLOR: #000000"></span><span style="COLOR: #0000ff">FROM</span><span style="COLOR: #000000">       <br /></span><span style="COLOR: #008080"> 7</span> <span style="COLOR: #000000">    sysobjects   SO, </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 对象表</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 8</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">    syscolumns   SC, </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 列名表</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080"> 9</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">    systypes     ST  </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 数据类型表 </span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">10</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">WHERE</span><span style="COLOR: #000000">        <br /></span><span style="COLOR: #008080">11</span> <span style="COLOR: #000000">    SO.id </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> SC.id <br /></span><span style="COLOR: #008080">12</span> <span style="COLOR: #000000">   </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">   SO.xtype </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">U</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">                   </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 类型U表示表，V表示视图</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">13</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">   </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">   SO.status </span><span style="COLOR: #808080">&gt;=</span><span style="COLOR: #000000"> </span><span style="FONT-WEIGHT: bold; COLOR: #800000">0</span><span style="COLOR: #000000">                  </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> status &gt;= 0 为非系统对象</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">14</span> <span style="COLOR: #008080"></span><span style="COLOR: #000000">   </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">   SC.xtype </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> ST.xusertype<br /></span><span style="COLOR: #008080">15</span> <span style="COLOR: #000000">   </span><span style="COLOR: #808080">AND</span><span style="COLOR: #000000">   SO.name </span><span style="COLOR: #808080">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #ff0000">'</span><span style="COLOR: #ff0000">T_Employee</span><span style="COLOR: #ff0000">'</span><span style="COLOR: #000000">  </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 某张特定表</span><span style="COLOR: #008080"><br /></span><span style="COLOR: #008080">16</span> <span style="COLOR: #008080"></span><span style="COLOR: #0000ff">ORDER</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">BY</span><span style="COLOR: #000000">  <br /></span><span style="COLOR: #008080">17</span> <span style="COLOR: #000000">    SO.name, SC.colorder         </span><span style="COLOR: #008080">--</span><span style="COLOR: #008080"> 按表名、列名排序</span></div><p>查询结果：<br /><br /><img height="151" alt="snap0002.gif" src="http://www.blogjava.net/images/blogjava_net/coderdream/SQLServer2000/060925/snap0002.gif" width="322" border="0" /><br /><br /><font color="#0000ff" size="5">3、如果要查看视图信息，只需要将SO.xtype = 'U'该为SO.xtype = 'V' 即可！</font><br /><br /><br /></p><img src ="http://www.blogjava.net/coderdream/aggbug/71736.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/coderdream/" target="_blank">CoderDream</a> 2006-09-25 14:49 <a href="http://www.blogjava.net/coderdream/archive/2006/09/25/71736.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>