html note

<!--Logical Styles-->
<em>This text is emphasized</em>
<strong>This text is strong</strong>
<code>This is some computer code</code>
<!--Definition list-->
<dl>
<dt>First term</dt>
<dd>Definition</dd>
<dt>Next term</dt>
<dd>Definition</dd>
</dl>
<!--Frames-->
<frameset cols="25%,75%">
<frame src="page1.htm">
<frame src="page2.htm">
</frameset>
<!--Forms-->
<form action="http://www.example.com/test.asp" method="post/get">
<input type="text" name="lastname"
value="Nixon" size="30" maxlength="50">
<button type="button" onclick="alert('hello')">click me</button>
<input type="password">
<input type="checkbox" checked="checked">
<input type="radio" name="sex" value="male" checked>Male
<br>
<input type="radio" name="sex" value="female">Female
<input type="submit">
<input type="reset">
<input type="hidden">
<input list="listname" name="browser"/>
<select>
<option value="apple">Apples</option>
<option value="banana"selected>Bananas</option>
<option value="cherry">Cherries</option>
</select>
<textarea name="Comment" rows="60"
cols="20"></textarea>
</form>
<!--fieldset 组合表单数据-->
<fieldset>
<legend>information:</legend>
用户名:<br />
<input type="text" name="n1" value="n2"/><br />
密码:<br />
<input type="text" name="n4" value="n3"/><br />
<input type="submit" value="submit" /> <br/>
</fieldset>
<!--datalist-->
<datalist id="listname">
<option value="op1"></option>
<option value="op2"></option>
</datalist>
<!--Form 属性-->
HTML <form> 元素,已设置所有可能的属性,是这样的:
<form action="action_page.php" method="GET" target="_blank" accept-charset="UTF-8"
ectype="application/x-www-form-urlencoded" autocomplete="off" novalidate>
.form elements.
</form>
Here is the list of <form> attributes:
accept-charset 规定在被提交表单中使用的字符集(默认:页面字符集)。
action 规定向何处提交表单的地址(URL)(提交页面)。
autocomplete 规定浏览器应该自动完成表单(默认:开启)。
enctype 规定被提交数据的编码(默认:url-encoded)。
method 规定在提交表单时所用的 HTTP 方法(默认:GET)。
name 规定识别表单的名称(对于 DOM 使用:document.forms.name)。
novalidate 规定浏览器不验证表单。
target 规定 action 属性中地址的目标(默认:_self)。
<!--inpute&type-->
<input type="number" name="points" min="0" max="100" step="10" value="30">
一些常用输入限制
disabled 规定输入字段应该被禁用。
max 规定输入字段的最大值。
maxlength 规定输入字段的最大字符数。
min 规定输入字段的最小值。
pattern 规定通过其检查输入值的正则表达式。
readonly 规定输入字段为只读(无法修改)。
required 规定输入字段是必需的(必需填写)。
size 规定输入字段的宽度(以字符计)。
step 规定输入字段的合法数字间隔。
value 规定输入字段的默认值。
HTML5 为 <input> 增加了如下属性:
autocomplete表单或输入字段是否应该自动完成
.autofocus.form.formaction.formenctype.formmethod
.formnovalidate.formtarget.height 和 width.list.min 和 max.multiple
.pattern (regexp).placeholder.required.step
<!--HTML5 adding new input features-->
type=color...date...datetime...datetime-local...email
...month...number...range..search..tel..time..url..week
<!--drag-->
<div id="div1" ondrop="drop(event)" ondragover="allowDrop(event)" style="100px;height:200px;padding:10px;border:1px solid #aaaaaa;"></div>
<br />
<img id="drag1" width="100px" draggable="true" ondragstart="drag(event)" src="1.jpg"/>
<script>
function allowDrop(ev)
{
ev.preventDefault();
}

function drag(ev)
{
ev.dataTransfer.setData("Text",ev.target.id);
}

function drop(ev)
{
ev.preventDefault();
var data=ev.dataTransfer.getData("Text");
ev.target.appendChild(document.getElementById(data));
}
</script>
<!--canvas-->
<script type="text/javascript">
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.moveTo(10,10);
cxt.lineTo(150,50);
cxt.lineTo(10,50);
cxt.stroke();
</script>
<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3">your browser doesnt support</canvas>
<!--SVG 内联元素 图像五角星-->
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" height="190">
<polygon points="100,10 40,180 190,60 10,60 160,180"
style="fill:lime;stroke:purple;stroke-5;fill-rule:evenodd;" />
</svg>
<!-- QuickTime MP4-->
<object width="420" height="360"
classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"
codebase="http://www.apple.com/qtactivex/qtplugin.cab">
<param name="src" value="movie.mp4" />
<param name="controller" value="true" />
</object>
<!-- Flash SWF -->
<object width="400" height="40"
classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="http://fpdownload.macromedia.com/
pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0">
<param name="SRC" value="bookmark.swf">
<embed src="bookmark.swf" width="400" height="40"></embed>
</object>
<!-- WMV -->
<object width="100%" height="100%"
type="video/x-ms-asf" url="3d.wmv" data="3d.wmv"
classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">
<param name="url" value="3d.wmv">
<param name="filename" value="3d.wmv">
<param name="autostart" value="1">
<param name="uiMode" value="full" />
<param name="autosize" value="1">
<param name="playcount" value="1">
<embed type="application/x-mplayer2" src="3d.wmv" width="100%"
height="100%" autostart="true" showcontrols="true"
pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"></embed>
</object>
<!--embed 插入音频-->
<embed height="100" width="100" src="song.mp3" />
<!--html 音频兼容解决办法-->
<audio controls="controls" height="100" width="100">
<source src="song.mp3" type="audio/mp3" />
<source src="song.ogg" type="audio/ogg" />
<embed height="100" width="100" src="song.mp3" />
</audio>
<!--雅虎播放-->
<a href="1.mp3">play</a>
<script type="text/javascript" src="http://mediaplayer.yahoo.com/js">
</script>


CSS CSS CSS CSS
CSS CSS CSS CSS

<!--id 选择器-->
#red {color:red;}
#green {color:green;}
<p id="red">这个段落是红色。</p>
<p id="green">这个段落是绿色。</p>
<!--id 派生选择器-->
#sidebar p {
font-style: italic;
text-align: right;
margin-top: 0.5em;
}
<div id="sidebar">
<p>此处为sidebar格式</p>
<h1>无格式</h1>
</div>
...id被选择 p.sidebar {...}
类选择器& ID 选择器:
区别 1:只能在文档中使用一次
与类不同,在一个 HTML 文档中,ID 选择器会使用一次,而且仅一次。
区别 2:不能使用 ID 词列表
不同于类,ID不能结合使用,因为 ID 属性不允许有以空格分隔的词列表。
区别 3:ID 能包含更多含义
类似于类,可以独立于元素来选择 ID。有些情况下,您知道文档中会出现
某个特定 ID 值,但是并不知道它会出现在哪个元素上,所以您想声明独立
的 ID 选择器。例如,您可能知道在一个给定的文档中会有一个 ID 值为
mostImportant 的元素。您不知道这个最重要的东西是一个段落、一个短
语、一个列表项还是一个小节标题。您只知道每个文档都会有这么一个最
重要的内容,它可能在任何元素中,而且只能出现一个。此时id可
<!--class 选择器-->
同id:派生 .sidebar P {...}
被选择 p.sidebar {...}
多类选择器: class="sidebar red green";
<!-- 属性选择器-->
[title] {...}
[title=sidebar] {...}
[title~=hello] {...}
<div title="word hello">
此具有title为hello的格式<br/>
</div>
[lang|=en]
{ color:red; }
<h1>下面为可以应用样式:</h1>
<p lang="en">Hello!</p>
<p lang="en-us">Hi!</p>
<!--后代选择 子元素选择器-->
h1 em {color:red;}
h1 > strong {color:red;}
属性格式:
[attribute] 用于选取带有指定属性的元素。
[attribute=value] 用于选取带有指定属性和值的元素。
[attribute~=value] 用于选取属性值中包含指定词汇的元素。
[attribute|=value] 带有以指定值开头的属性值的元素,值须是整个单词。
[attribute^=value] 匹配属性值以指定值开头的每个元素。
[attribute$=value] 匹配属性值以指定值结尾的每个元素。
[attribute*=value] 匹配属性值中包含指定值的每个元素。
<!--css 背景属性-->
background 简写属性,作用是将背景属性设置在一个声明中。
background-attachment 背景图像是否固定或者随着页面的其余部分滚动。
background-color 设置元素的背景颜色。
background-image 把图像设置为背景。
background-position 设置背景图像的起始位置。
background-repeat 设置背景图像是否及如何重复。
<!--链接四种状态-->
a:link {color:red} 为访问
a:visited {color:blue} 已访问
a:hover {color:grey} 位于上方
a:active {color:black } 被点时刻
<!--CSS position 属性-->
h2.pos_left<!--相对定位..absolute(绝对定位)..fixed(固定定位)-->
{position:relative;left:-20px}
固定定位元素框的表现类似于将 position 设置为 absolute,不过其包含块是视窗本身。
overflow:scroll;提供一种滚动机制,使元素框中内容出现滚动条..scroll..hidden..auto
clip:rect(0px 50px 200px 0px);属性可以剪切一幅画
float:left;可对图像,文本浮动..right..top..bottom
****************
p {padding-left:10 ;border-style:outset solid;border-bottom-color:red;padding-left:10 ;border-style:outset solid dotted;margin:10
border-bottom-style:dotted;margin:10;padding-top:20;position:relative;left:20px;
letter-spacing:20;}
span {float:left;font-size:200%;font-family:algerian,courier;line-height:80%;}
<!--相邻兄弟选择器-->
h1 + p {margin-top:50px;}
这个选择器读作:“选择紧接在 h1 元素后出现的段落,h1 和 p 元素拥有共同的父元素”。
<!--CSS 伪类 (Pseudo-classes)-->
p:first-child {...}
<div>
<p>有first-child属性</p>
<p>无first-child属性</p>
</div>
:active 向被激活的元素添加样式。 1
:focus 向拥有键盘输入焦点的元素添加样式。 2
:hover 当鼠标悬浮在元素上方时,向元素添加样式。 1
:link 向未被访问的链接添加样式。 1
:visited 向已被访问的链接添加样式。 1
:first-child 向元素的第一个子元素添加样式。 2
:lang 向带有指定 lang 属性的元素添加样式。
<!--CSS 伪元素 (Pseudo-elements)-->
属性 描述 CSS
:first-letter 向文本的第一个字母添加特殊样式。 1
:first-line 向文本的首行添加特殊样式。 1
:before 在元素之前添加内容。 2
:after 在元素之后添加内容。 2
<!--gradient-->
background: radial-gradient(red 5%, yellow 25%, #1E90FF 50%);
linear-gradient(top-left,#ffffff, #f04c4c);
<!--添加网页文本 append-->
function appendText()
{
var txt1="<p>Text.</p>"; // 以 HTML 创建新元素
var txt2=$("<p></p>").text("Text."); // 以 jQuery 创建新元素
var txt3=document.createElement("p"); // 以 DOM 创建新元素
txt3.innerHTML="Text.";
$("p").append(txt1,txt2,txt3); // 追加新元素
}
<!--animate-->
$(".move").click(function() {
var div=$(".move");
div.animate({height:'300px',opacity:'0.4'},"slow");
div.animate({'300px',opacity:'0.8'},"slow");
div.animate({height:'100px',opacity:'0.4'},"slow");
div.animate({'100px',opacity:'0.8'},"slow");
});
<!--添加元素-->
var txt1="<p>Text.</p>"; // 以 HTML 创建新元素
var txt2=$("<p></p>").text("Text."); // 以 jQuery 创建新元素
var txt3=document.createElement("p");
txt3.innerHTML="Text."; // 通过 DOM 来创建文本
$("body").append(txt1,txt2,txt3); // 追加新元素
<!--设置多个 CSS 属性-->
如需设置多个 CSS 属性,请使用如下语法:
css({"propertyname":"value","propertyname":"value",...});
单个属性
$("p").css("background-color");

**javascript**javascript**
**javascript**javascript**
<p id="demo">
JavaScript 能改变 HTML 元素的内容。
</p>
<script>
function myFunction()
{
x=document.getElementById("demo"); // 找到元素
x.innerHTML="Hello JavaScript!"; // 改变内容
}
**********
</script>
<button type="button" onclick="myFunction()">点击这里</button>
点击图片改变图片
<script>
function changeImage()
{element=document.getElementById('myimage')
if (element.src.match("bulbon"))
{element.src="/i/eg_bulboff.gif";}
else
{element.src="/i/eg_bulbon.gif";}}
</script>
<img id="myimage" onclick="changeImage()" src="/i/eg_bulboff.gif">
外部JavaScript
可以把脚本保存到外部文件中。外部 JavaScript 文件的文件扩展名是 .js。
如需使用外部文件,请在 <script> 标签的 "src" 属性中设置该 .js 文件:
外部JavaScript不能包含<script>标签
<body>
<script src="myScript.js"></script>
</body>
<!--document.write()-->
请使用 document.write() 仅仅向文档输出写内容。
如果在文档已完成加载后执行 document.write,整个 HTML 页面将被覆盖:
<!--变量 对象-->
var c=123;var c="bingo";var c='bingo';var c=false/true;
var c=new Array();c[0]="c1";c[1]="c2";var c={"c1","c2"};
var person={firstname:"bill",lastname:"gate",id:02};//对象
var c=undefined;cars=["BMW","Volvo","Saab","Ford"];
var carname=new String;
var x= new Number;
var y= new Boolean;
var cars= new Array;
var person= new Object;
如果把值赋给尚未声明的变量,该变量将被自动作为全局变量声明
carname="Volvo";
将声明一个全局变量 carname,即使它在函数内执行。
<!--对象 函数 方法-->


<!--字符串 +方法-->
txt1="What a very";
txt2="nice day";
txt3=txt1+txt2;
在以上语句执行后,变量 txt3 包含的值是 "What a verynice day"
<!--switch-->
switch(n) {
case 1:
执行代码块 1;break;
case 2:
执行代码块 2;break;
default:
n 与 case 1 和 case 2 不同时执行的代码}
<!--for/in 循环-->
for/in 语句循环遍历对象的属性:
var person={fname:"John",lname:"Doe",age:25};
for (x in person) {
txt=txt + person[x];}//txt="JohnDoe25";
<!--break continue 特殊-->
除有正常用法,还有跳出标签代码块:
cars=["BMW","Volvo","Saab","Ford"];
list:
{
document.write(cars[0] + "<br>");
document.write(cars[1] + "<br>");
document.write(cars[2] + "<br>");
break list;
document.write(cars[3] + "<br>");
document.write(cars[4] + "<br>");
document.write(cars[5] + "<br>");
}
<!--try catch throw-->
try
{ var x=document.getElementById("demo").value;
if(x=="") throw "值为空";
if(isNaN(x)) throw "不是数字";
if(x>10) throw "太大";
if(x<5) throw "太小";}
catch(err)
{var y=document.getElementById("mess");
y.innerHTML="错误:" + err + "。";}
try { adddlert("Welcome guest!"); }
catch(err) {
txt="There was an error on this page. ";
txt+="Error description: " + err.message + " ";
txt+="Click OK to continue. ";
alert(txt);}
<!--DOM 事件-->
<h1 onclick="this.innerHTML='谢谢!'">请点击该文本</h1>
onchange 事件
onchange 事件常结合对输入字段的验证来使用。
下面是一个如何使用 onchange 的例子。当用户改变输入字段的内容时,会调用 upperCase() 函数。
<input type="text" id="fname" onchange="upperCase()">
onload 和 onunload 事件
<body onload="checkCookies()">
<script>
function checkCookies()
{ if (navigator.cookieEnabled==true)
{ alert("已启用 cookie") }
else
{ alert("未启用 cookie") } }
</script>
onmouseover 和 onmouseout 事件
onmouseover 和 onmouseout 事件可用于在用户的鼠标移至 HTML 元素上方或移出元素时触发函数。
onmousedown、onmouseup 以及 onclick 事件
onmousedown, onmouseup 以及 onclick 构成了鼠标点击事件的所有部分。首先当点击鼠标按钮时,会触发 onmousedown 事件,当释放鼠标按钮时,会触发 onmouseup 事件,最后,当完成鼠标点击时,会触发 onclick 事件。
<!--创建新的 HTML 元素-->
如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素。
<div id="div1">
<p id="p1">这是一个段落</p>
<p id="p2">这是另一个段落</p>
</div> <script>
var para=document.createElement("p");
var node=document.createTextNode("这是新段落。");
para.appendChild(node);
var element=document.getElementById("div1");
element.appendChild(para); </script>
<!--删除 已有html元素-->
<div id="div1">
<p id="p1">这是一个段落。</p>
<p id="p2">这是另一个段落。</p>
</div> <script>
var parent=document.getElementById("div1");
var child=document.getElementById("p1");
parent.removeChild(child); </script>
<!--Window-->
window.history.back() - 与在浏览器点击后退按钮相同
window.history.forward() - 与在浏览器中点击按钮向前相同
window.location 对象在编写时可不使用 window 这个前缀。
location.hostname 返回 web 主机的域名
location.pathname 返回当前页面的路径和文件名
location.port 返回 web 主机的端口 (80 或 443)
location.protocol 返回所使用的 web 协议(http:// 或 https://)
<!--消息框-->
var name=prompt("请输入您的名字","Bill Gates")
if (name!=null && name!="")
{ document.write("你好!" + name + " 今天过得怎么样?") }
prompt("输入","bill gate")..confirm("press")..alert()

var t1=setTimeout("document.getElementById('txt').value='2 秒'",2000)
setTimeout() 未来的某时执行代码
clearTimeout() 取消setTimeout()
<!--jQuery..js Frame-->
<script src="https://ajax.useso.com/ajax/libs/jquery/1.8.3/jquery.min.js">
</script>
<script>
function myFunction()
{
$("#h01").html("Hello jQuery")
}
$(document).ready(myFunction);
</script>
<!--特殊字符 转意-->
[ //[
<!--jQuery 选择器-->
jQuery 元素选择器
jQuery 使用 CSS 选择器来选取 HTML 元素。
$("p") 选取 <p> 元素。
$("p.intro") 选取所有 class="intro" 的 <p> 元素。
$("p#demo") 选取所有 id="demo" 的 <p> 元素。
jQuery 属性选择器
jQuery 使用 XPath 表达式来选择带有给定属性的元素。
$("[href]") 选取所有带有 href 属性的元素。
$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。
$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。
$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
jQuery CSS 选择器
jQuery CSS 选择器可用于改变 HTML 元素的 CSS 属性。
下面的例子把所有 p 元素的背景颜色更改为红色:
实例
$("p").css("background-color","red");

$(this) 当前 HTML 元素
$("p") 所有 <p> 元素
$("p.intro") 所有 class="intro" 的 <p> 元素
$(".intro") 所有 class="intro" 的元素
$("#intro") id="intro" 的元素
$("ul li:first") 每个 <ul> 的第一个 <li> 元素
$("[href$='.jpg']") 所有带有以 ".jpg" 结尾的属性值的 href 属性
$("div#intro .head") id="intro" 的 <div> 元素中的所有 class="head" 的元素
<!--Jquery中$(document).ready()作用类似于JavaScript中window.onload方法 区别-->
1.执行时间
window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。
$(document).ready()是DOM结构绘制完毕后就执行,不必等到加载完毕。
2.编写个数不同
window.onload不能同时编写多个,如果有多个window.onload方法,只会执行一个
$(document).ready()可以同时编写多个,并且都可以得到执行
3.简化写法
window.onload没有简化写法
$(document).ready(function(){})可以简写成$(function(){});
<!--prototype..js Frame-->
<script src="/jquery/jquery-1.11.1.min.js"></script>
<script>
function myFunction()
{
$("h01").insert("Hello Prototype!");
}
Event.observe(window,"load",myFunction);
</script>
camel-case 标记法

SQL SQL SQL
SQL SQL SQL
SQL SQL SQL

SQL 指结构化查询语言
SQL 使我们有能力访问数据库
SQL 是一种 ANSI 的标准计算机语言
创建发布数据库中数据的网站,需要以下要素:
RDBMS 数据库程序(比如 MS Access, SQL Server, MySQL)
服务器端脚本语言(比如 PHP 或 ASP)
SQL
HTML / CSS
RDBMS 指的是关系型数据库管理系统,RDBMS 是 SQL 的基础,也是所有现代数据库系统诸如 Oracle、SQL Server、IBM DB2、Sybase、MySQL 以及 Microsoft Access 的基础。
SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号)。如果是数值,请不要使用引号。
<!--SQL DML 和 DDL-->
可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。
SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。
查询和更新指令构成了 SQL 的 DML 部分:
SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据
SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。
SQL 中最重要的 DDL 语句:
CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引
<!--SQL SELECT DISTINCT 语句-->
在表中,可能会包含重复值,关键词 DISTINCT 用于返回唯一不同的值。
SELECT DISTINCT 列名称 FROM 表名称
<!--WHERE ORDERED子句-->
有条件地从表中选取数据,可将 WHERE 子句添加到 SELECT 语句。
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
ex:SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William') AND LastName='Carter'
以逆字母顺序显示公司名称,并以数字顺序显示顺序号:
SELECT * FROM Orders ORDERED BY Company DESC,Ordernumber ASC;
<!--INSERT INTO 语句-->
INSERT INTO 语句用于向表格中插入新的行。
INSERT INTO 表名称 VALUES (值1, 值2,....)
INSERT INTO Persons VALUES ('Gates', 'Bill', 'Xuanwumen 10', 'Beijing')
我们也可以指定所要插入数据的列:
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)
INSERT INTO Persons (LastName, Address) VALUES ('Wilson', 'Champs-Elysees')
<!--Update 语句-->
Update 语句用于修改表中的数据
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
UPDATE Person SET FirstName = 'Fred' WHERE LastName = 'Wilson'
<!--DELETE 语句-->
DELETE 语句用于删除表中的行。
DELETE FROM 表名称 WHERE 列名称 = 值
DELETE FROM Person WHERE LastName = 'Wilson'
<!--TOP 子句-->
TOP 子句用于规定要返回的记录的数目。
对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。
注释:并非所有的数据库系统都支持 TOP 子句。
SQL Server 的语法:
SELECT TOP number|percent column_name(s)
FROM table_name
SELECT * FROM Persons LIMIT 5;
SELECT TOP 2 * FROM Persons;
SELECT TOP 50 PERCENT * FROM Persons;
<!--LIKE 操作符-->
LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。
SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern;
SELECT * FROM Persons WHERE City NOT LIKE '%lon%';
<!--SQL 通配符-->
SQL 通配符必须与 LIKE 运算符一起使用。
在 SQL 中,可使用以下通配符:
% 替代一个或多个字符
_ 仅替代一个字符
[charlist] 字符列中的任何单一字符
[^charlist]或[!charlist] 不在字符列中的任何单一字符
<!--SQL IN..BETWEEN 操作-->
SELECT * FROM Persons WHERE LastName IN ('Adams','Carter');
如需以字母顺序显示介于 "Adams"(包括)和 "Carter"(不包括)之间的人,请使用下面的 SQL:
SELECT * FROM Persons WHERE LastName BETWEEN 'Adams' AND 'Carter';
<!--DATABASE CREATE-->
CREATE DATABASE 用于创建数据库。
CREATE DATABASE database_name;
CREATE DATABASE 语句
CREATE DATABASE 用于创建数据库。
SQL CREATE DATABASE 语法
CREATE DATABASE database_name
<!--JOIN-->
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons, Orders WHERE Persons.Id_P = Orders.Id_P
不同的 SQL JOIN
JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons
INNER JOIN Orders ON Persons.Id_P = Orders.Id_P ORDER BY Persons.LastName
<!--select into-->
IN 子句可用于向另一个数据库中拷贝表:
SELECT * INTO Persons IN 'Backup.mdb' FROM Persons
如果我们希望拷贝某些域,可以在 SELECT 语句后列出这些域:
SELECT LastName,FirstName INTO Persons_backup FROM Persons
<!--create Index -->
CREATE INDEX index_name ON table_name (column_name)
CREATE INDEX PersonIndex ON Person (LastName)
<!--DROP INDEX-->
SQL DROP INDEX 语句
我们可以使用 DROP INDEX 命令删除表格中的索引。
用于 Microsoft SQLJet (以及 Microsoft Access) 的语法:
DROP INDEX index_name ON table_name
SQL DROP TABLE 语句
DROP TABLE 语句用于删除表(表的结构、属性以及索引也会被删除):
DROP TABLE 表名称
SQL DROP DATABASE 语句
DROP DATABASE 语句用于删除数据库:
DROP DATABASE 数据库名称
SQL TRUNCATE TABLE 语句
如果我们仅仅需要除去表内的数据,但并不删除表本身,那么我们该如何做呢?
请使用 TRUNCATE TABLE 命令(仅仅删除表格中的数据):
TRUNCATE TABLE 表名称
<!--内建 SQL 函数的语法是:-->
SELECT function(列) FROM 表
在 SQL 中,基本的函数类型和种类有若干种。函数的基本类型是:
Aggregate 函数 Aggregate 函数的操作面向一系列的值,并返回一个单一的值。
Scalar 函数 Scalar 函数的操作面向某个单一的值,并返回基于输入值的一个单一的值。






AND / OR SELECT column_name(s) FROM table_name WHERE condition AND|OR condition
ALTER TABLE (add column) ALTER TABLE table_name ADD column_name datatype
ALTER TABLE (drop column) ALTER TABLE table_name DROP COLUMN column_name
AS (alias for column) SELECT column_name AS column_alias FROM table_name
AS (alias for table) SELECT column_name FROM table_name AS table_alias
BETWEEN SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2
CREATE DATABASE CREATE DATABASE database_name
CREATE INDEX CREATE INDEX index_name ON table_name (column_name)
CREATE TABLE CREATE TABLE table_name(column_name1 data_type,column_name2 data_type,.......)
CREATE UNIQUE INDEX CREATE UNIQUE INDEX index_nameON table_name (column_name)
CREATE VIEW CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
DELETE FROM DELETE FROM table_name (Note: Deletes the entire table!!) or DELETE FROM table_name WHERE condition
DROP DATABASE DROP DATABASE database_name
DROP INDEX DROP INDEX table_name.index_name
DROP TABLE DROP TABLE table_name
GROUP BY SELECT column_name1,SUM(column_name2) FROM table_name GROUP BY column_name1
HAVING SELECT column_name1,SUM(column_name2) FROM table_name GROUP BY column_name1 HAVING SUM(column_name2) condition value
IN SELECT column_name(s) FROM table_name WHERE column_name
IN (value1,value2,..)
INSERT INTO INSERT INTO table_name
VALUES (value1, value2,....) or INSERT INTO table_name (column_name1, column_name2,... VALUES (value1, value2,....)
LIKE SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern
ORDER BY SELECT column_name(s) FROM table_name ORDER BY column_name [ASC|DESC]
SELECT SELECT column_name(s) FROM table_name
SELECT * SELECT * FROM table_name
SELECT DISTINCT SELECT DISTINCT column_name(s) FROM table_name
SELECT INTO (used to create backup copies of tables) SELECT * INTO new_table_name FROM original_table_name or SELECT column_name(s) INTO new_table_name FROM original_table_name
TRUNCATE TABLE (deletes only the data inside the table) TRUNCATE TABLE table_name
UPDATE UPDATE table_name SET column_name=new_value [, column_name=new_value]
WHERE column_name=some_value WHERE SELECT column_name(s) FROM table_name WHERE condition

BEGIN TRANSACTION;

/* Create a table called NAMES */
CREATE TABLE NAMES(Id integer PRIMARY KEY, Name text,City text);

/* Create few records in this table */
INSERT INTO NAMES VALUES(1,'Tom','beijing');
INSERT INTO NAMES VALUES(2,'Lucy','nanjing');
INSERT INTO NAMES VALUES(3,'Frank','yangzhouo');
INSERT INTO NAMES VALUES(4,'Jane','changzhou');
INSERT INTO NAMES VALUES(5,'Robert','suzhou');
COMMIT;

/* Display all the records from the table */
SELECT * FROM NAMES;

原文地址:https://www.cnblogs.com/ouyangping/p/6258668.html