SQL学习笔记--创建表、约束、修改表

数据库1-SQL server建库建表操作 (一)每贴一句 很多事只有到了尽头,才能看到转角。——《你是最好的自己》杨杨&张皓宸 (二)开始 (1)进入MSSMS软件 1.点开Microsoft SQL Server Management Studio软件,出现以下应用界面: 作为初学者,直接点击连接即可。 2.点击新建查询: 3.出现以下界面,即可开始sql语言代码建库建表操作: (2)开始sql语言建库建表 开始前先说明,sql语言是没有大小写的规范之分的,所以接下来的代码皆为小写 1.建立名为“demo”的数据库 creat 阅读详情

复制表

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--复制表</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CREATE</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">TABLE</span> MYEMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">AS</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li></ul>

insert操作

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--insert操作</span>
语法:<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">insert</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">into</span> 表名(字段<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>,字段<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2.</span>...) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">values</span> (值<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>,值<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2.</span>...)
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">INSERT</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">INTO</span> MYEMP (empno,ename,job,mgr,hiredate,sal,comm,deptno) 
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">VALUES</span> (<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9527</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'唐伯虎'</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'SALESMAN'</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7839</span>,sysdate,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2500</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">130</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">40</span>);</span>

<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">INSERT</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">INTO</span> MYEMP (empno,ename,job,sal,comm,deptno)
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">VALUES</span> (<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1521</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'wow'</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'CLERK'</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1600</span>,<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">null</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>);</span>

<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">INSERT</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">INTO</span> MYEMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">VALUES</span> (<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3306</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'lol'</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'PERSIDENT'</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7788</span>,to_date(<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'2008-2-14'</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'yyyy-mm-dd'</span>),<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1000</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span>);</span>

<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> MYEMP;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li></ul>

delete操作

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--delete操作</span>
语法:<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">delete</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">from</span> 表名 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">where</span> 条件
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">DELETE</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> MYEMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> EMPNO=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9257</span>;</span>

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">------截断表truncate;截断表功能上类似于没有where子句的delete</span>
语法:<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">truncate</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名;</span>

<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">truncate</span>与<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">delete</span>的区别:
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">delete</span>会记录日志,所以速度较慢;而<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">truncate</span>不会记录日志,清空表并释放表所占的资源,所以速度快
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">delete</span>可以根据条件只删除部门数据,而<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">truncate</span>只能一次清空表中所有数据
</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li></ul>

update操作

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--update操作</span>
语法:<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">update</span> 表名 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">set</span> 字段<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>=值<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>,字段<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>=值<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2.</span>.. <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">where</span> 条件
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">UPDATE</span> MYEMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SET</span> SAL=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">888</span>,COMM=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">222</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> ENAME=<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'LOL'</span>;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li></ul>

创建表

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--创建表</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">create</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名(字段名 类型 [<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span> 默认的值],字段名 类型[<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span> 默认的值],...)

<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">create</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">as</span>(<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">select</span>语句)
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">select</span>语句:<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">select</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">from</span> 表名<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>:复制一张表,和<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">select</span> 表中的结构和数据一样
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">select</span>语句:<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">select</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">from</span> 表名<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">where</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>:复制一张表,和<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">select</span> 表中的结构一样


创建一张person表(身份证号pid,姓名name,生日bithday,性别sex 默认性别是男)
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CREATE</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">TABLE</span> PERSON
(
PID <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">NUMBER</span> (<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20</span>),
NAME VARCHAR2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>),
BIRTHDAY <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">DATE</span>,
SEX VARCHAR2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">DEFAULT</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'男'</span>
);</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li></ul>

创建表并添加约束

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--创建表并添加约束</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CREATE</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">TABLE</span> goods(
    goodsid varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span>),
    goodname varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20</span>),
    unitprice <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">number</span>(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>),
    category varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span>),
    provider varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span>),
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> goodsid_pk <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">PRIMARY</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">KEY</span>(goodsid),--添加主键约束
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> unitprice_ck <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">check</span>(unitprice><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>) --添加检查约束

);</span>

<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CREATE</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">TABLE</span> customer(
    customerid varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span>),
    name varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span>) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">NOT</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">NULL</span>,      --添加非空约束
    address varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">20</span>),
    email <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">number</span>(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>),
    sex varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span>),
    cardid varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span>),
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> customerid_pk <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">PRIMARY</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">KEY</span>(customerid),
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> email_uq <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">unique</span>(email),      --添加唯一约束
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> sex_ck <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">check</span>(sex <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">in</span> (<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'male'</span>,<span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'female'</span>))    
);</span>

<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CREATE</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">TABLE</span> purchase(
    customerid varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span>),
    goodsid varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span>),
    nums <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">number</span>(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>),
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> customer_fk <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FOREIGN</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">KEY</span>(customerid) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">REFERENCES</span> customer_wzl(customerid),
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> goods_fk <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FOREIGN</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">KEY</span>(goodsid) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">REFERENCES</span> goods_wzl1(goodsid),   --添加外键约束
    <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">CONSTRAINT</span> nums_ck <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">check</span>(nums between <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">and</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">30</span>)
);</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li><li style="box-sizing: border-box; padding: 0px 5px;">18</li><li style="box-sizing: border-box; padding: 0px 5px;">19</li><li style="box-sizing: border-box; padding: 0px 5px;">20</li><li style="box-sizing: border-box; padding: 0px 5px;">21</li><li style="box-sizing: border-box; padding: 0px 5px;">22</li><li style="box-sizing: border-box; padding: 0px 5px;">23</li><li style="box-sizing: border-box; padding: 0px 5px;">24</li><li style="box-sizing: border-box; padding: 0px 5px;">25</li><li style="box-sizing: border-box; padding: 0px 5px;">26</li><li style="box-sizing: border-box; padding: 0px 5px;">27</li><li style="box-sizing: border-box; padding: 0px 5px;">28</li><li style="box-sizing: border-box; padding: 0px 5px;">29</li><li style="box-sizing: border-box; padding: 0px 5px;">30</li><li style="box-sizing: border-box; padding: 0px 5px;">31</li><li style="box-sizing: border-box; padding: 0px 5px;">32</li></ul>

修改表

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--修改表</span>
添加列:<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">alter</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名  <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">add</span>(字段名 类型 [<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span> 默认的值],字段名 类型[<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span> 默认的值],...);</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">---为person增加一个字段(address)</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">alter</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> person <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">add</span>(address varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">50</span>));</span>


修改列的类型和默认值:<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">alter</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名 modify(字段名 类型 [<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span> 默认的值],字段名 类型[<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span> 默认的值],...);</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">---修改person字段sex的默认值为女:</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">alter</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> person modify(sex varchar2(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span>) <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">default</span> <span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">'女'</span>);</span>

字段重命名:<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">alter</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名 rename <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">column</span> 旧的字段名 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> 新的字段名;</span>

为表重命令:<span class="hljs-operator" style="box-sizing: border-box;">rename 旧的表名 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> 新的表名
删除列:<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">alter</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名  <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">drop</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">column</span> 字段名;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li></ul>

删除表

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--删除表</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">drop</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">table</span> 表名;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li></ul>

添加注释

<code class="hljs applescript has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--添加注释</span>
可以为表或字段添加注释
comment <span class="hljs-function_start" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">on</span></span> table 表名 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> 注释;
comment <span class="hljs-function_start" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">on</span></span> column 表名.列名 <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> 注释;

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">---给表a添加注释</span>
SQL>comment <span class="hljs-function_start" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">on</span></span> table a <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> 'test table';

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">---查看表a的注释</span>
SQL>select * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">from</span> user_tab_comments <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">where</span> table_name='A';

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">---给表a中列birthday添加注释</span>
SQL>comment <span class="hljs-function_start" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">on</span></span> column a.birthday <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">is</span> '出生日期';

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">---查看字段的注释</span>
SQL>select * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">from</span> user_col_comments <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">where</span> table_name='A';</code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li></ul>

行号、物理地址

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--行号、物理地址</span>
7)ROWNUM 行号,伪列
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> ROWNUM,DEPTNO,DNAME <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> DEPT;</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--行号,伪列</span>

查询出emp表的前5条记录 
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> ROWNUM<=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span>;</span>

查询出emp表的第6条到第9条的记录   <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--ROWNUM没有>,>=的用法</span>

<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> TEMP.RM,TEMP.EMPNO,TEMP.ENAME 
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> (<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> ROWNUM RM,EMPNO,ENAME <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP) TEMP
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> TEMP.RM BETWEEN <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">AND</span> <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9</span>;</span>

ROWID 物理地址     <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--ROWID 物理地址  ,主要用于删除表中大量重复的记录</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> ROWID ,DEPT.* <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> DEPT;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li></ul>

集合操作

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--集合操作</span>
UNION: 并
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">UNION</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> DEPTNO=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>;</span>

UNION ALL:并,不去除重复记录
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">UNION</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">ALL</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> DEPTNO=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>;</span>

MINUS:取2个查询结果中不同的部分
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP MINUS <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> DEPTNO=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>;</span>

INTERSECT: 交叉
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">INTERSECT</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">SELECT</span> * <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">FROM</span> EMP <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">WHERE</span> DEPTNO=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>;</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li></ul>

事务操作

<code class="hljs sql has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--事务操作</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--事务处理:用来保证数据的完整性,事务中所有的操作要么都成功,要么都失败</span>
<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--事务特性:原子性、一致性、永久性、隔离性</span>
在Oracle中每打开一个窗口,都会与数据库建立一个会话Session,一个Session对数据库所做的修改,不会立即更新到数据库中,而是只在在缓冲区中,允许回滚操作

<span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--事务操作</span>
<span class="hljs-operator" style="box-sizing: border-box;"><span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">commit</span> 提交事务
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">rollback</span> 回滚事务

事务保存点
可以把一个事务分成多个部分
设置回滚点:
savepoint  事务保存点
<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">rollback</span> <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">to</span> 事务保存点

注:一旦提交了事务,则肯定无法回滚
   <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">commit</span>操作被内置在DDL语句中,即执行DDL操作时会自动提交事务</span></code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; background-color: rgb(238, 238, 238); top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right;"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li><li style="box-sizing: border-box; padding: 0px 5px;">16</li><li style="box-sizing: border-box; padding: 0px 5px;">17</li></ul>

表的管理

<code class="hljs livecodeserver has-numbering" style="display: block; padding: 0px; background-color: transparent; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-top-left-radius: 0px; border-top-right-radius: 0px; border-bottom-right-radius: 0px; border-bottom-left-radius: 0px; word-wrap: normal; background-position: initial initial; background-repeat: initial initial;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">--表的管理</span>
<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>)基本数据类型
   字符型:
   varchar2(n):实际占用多少就多少
   <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">char</span>(n):如果不足,是以空格来填充

   <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">char</span>(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>):<span class="hljs-operator" style="box-sizing: border-box;">a</span>  

   数值型
   <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">number</span>(p,s)
   s=<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>
   <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">number</span>(p,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>)=<span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">number</span>(p):整数
   s><span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>:小数的右边S位
   <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">number</span>(p点,s)
   <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4566.45</span>
   <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">number</span>(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6</span>,<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>)
   s<<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>:小数点左边S位

   日期型
   <span class="hljs-built_in" style="color: rgb(102, 0, 102); box-sizing: border-box;">date</span>表示日期,默认格式为:<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">31</span>-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span>月-<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">14</span>

   larger object(<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span>G)   
   clob 大文本数据
   blob 二进制大数据</code>
数据表的创建与修改管理(表的完整性约束) 数据表的创建与修改管理 阅读详情

相关推荐

【STM32】从零构建串口IAP框架:BootLoader与App双向跳转实战解析

本文详细解析了STM32串口IAP框架的构建,重点阐述了BootLoader与App双向跳转的实战原理与实现步骤。内容涵盖Flash分区规划、中断向量表重定向、通信协议设计及固件升级流程,并针对跳转失败、程序跑飞等常见问题提供了解决方案,帮助开发者掌握产品级远程升级的核心技术。

wind6的博客 838

MySQL(十五)—— 创建表加入约束

15. 创建表加入约束15.1 什么是约束15.2 约束包括哪些15.3 非空约束 not null15.4 唯一性约束 unique15. 5 主键约束(primary key)15.6 外键约束(foreign key) 15. 创建表加入约束 15.1 什么是约束   约束对应的英语单词:constraint。   在创建表的时候,我们可以给表中的字段加上一些约束,来保证这个表中数据的完整性、有效性!   约束的作用就是为了保证表中的数据有效! 15.2 约束包括哪些   非空约束:not null.

大彤小忆的博客 1968

2024“华为杯”中国研究生数学建模竞赛(A题)深度剖析_数学建模完整过程+详细思路+代码全解析

目标是优化风力涡轮机的功率调度,使其在给定的实时风速数据下,最小化涡轮机关键组件(如塔架和主轴)的疲劳损伤。问题的挑战在于,考虑通信延迟和测量噪声的同时,要确保功率输出与风速变化的响应快速且准确。

2401_82549447的博客 6630

mysql创建表格1warning_<MySQL>MySQL创建表及相关约束

第一个表创建:create table class(cid int not null auto_increment primary key,caption char(20) not null)engine=innodb default charset=utf8;插入数据:insert into class(caption) values('三年二班');insert into class(capt...

weixin_33355290的博客 287

告别Mac自带终端:iTerm2 + Oh My Zsh 保姆级配置指南(含国内镜像源)

本文提供了一份详细的Mac终端优化指南,涵盖iTerm2、Oh My Zsh和Homebrew的配置流程,特别针对国内用户提供镜像源解决方案。通过安装现代化工具链和优化配置,帮助开发者打造高效、美观的终端工作环境,提升日常开发效率。

weixin_42638178的博客 398

Python对接海康威视机器视觉工业相机

工业相机只允许单条连接,也就是说MVS如果连接了相机,python代码就无法获取数据,此时必须。相机工具类(读者直接复制)HKCamera_class.py。博主这里出现了一个警告:获取不到相机参数。四、使用Pycharm打开Python代码示例文件夹。三、找到MVS示例代码(代码在MVS的安装位置)二、解压并安装MVS客户端。一、下载MVS客户端。安装一下opencv。

Good Luck 2万+

经典SQL学习笔记 (五)-创建表、约束、修改表

创建表、约束、修改表复制表--复制表 CREATE TABLE MYEMP AS SELECT * FROM EMP;insert操作--insert操作 语法:insert into 表名(字段1,字段2....) values (值1,值2....) INSERT INTO MYEMP (empno,ename,job,mgr,hiredate,sal,comm,deptno) VALUES

陆讯 2096

sentinel——SLC数据下载、DEM数据下载拼接、精密轨道数据下载方法

Sentinel——SLC数据下载、DEM数据下载、精密轨道数据下载方法 SLC数据下载 网址:https://search.asf.alaska.edu DEM数据下载 1 手动下载 http://srtm.csi.cgiar.org/srtmdata/ 3.在SARscape中使用下载好的DEM 将下载好的DEM放在软件默认下载DEM路径下(默认路径是C:\Users<用户名&g...

u011322358的博客 2万+

【数据库和SQL学习笔记】2.表的要素(数据类型、约束)和操作(创建、修改、删除)

【数据库和SQL学习笔记】2.表的要素(数据类型、约束)和操作(创建、修改、删除)

takedachia的博客 1281

2026年全国青少年信息素养大赛算法应用主题赛C++赛项【决赛】模拟卷1:文末附答案

2026年全国青少年信息素养大赛算法应用主题赛C++赛项【决赛】模拟卷1:文末附答案

王老师青少年编程 1178

YOLOv10精度上不去?QAT量化感知训练全流程,INT8推理mAP只掉0.8%

普通PTQ量化虽简单,但无法应对YOLOv10的小目标特征和激活分布波动,导致精度暴跌。QAT通过“模拟量化误差+联合优化权重与量化参数”,让INT8模型精度接近FP16,同时速度提升1.8倍,完美适配实时检测场景(如安防监控、自动驾驶)。该流程已在工业级项目中验证,针对YOLOv10的优化策略(敏感层保护、小目标加权、分阶段训练)可直接迁移至其他YOLO系列(v8/v9),量化后精度损失均可控制在1%以内。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 916

SQL Server 表结构设计与约束详解

这篇文章是看b站上数据库基础入门学习视频的笔记,指路:【SQL SERVER数据库_D丝学编程】 https://www.bilibili.com/video/BV1XV411C7TP/?

cc8kk的博客 1631

ABAP Module Pool 编程入门:把 Table Control 用透,在 Dynpro 里做出可编辑的列表界面

摘要:Table Control是SAP GUI中用于对话式事务的多行数据交互控件,具备滚动、选择、修改等功能。它通过CXTAB_CONTROL/CXTAB_COLUMN结构实现动态控制,需在PBO/PAI中配合LOOP循环处理数据流。开发时需注意LINES、TOP_LINE等关键字段设置,并采用并行循环简化编码。典型应用包括订单行维护、主数据管理等场景,支持多选删除、列排序等业务需求。(150字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 344

SQL学习笔记

语句: 常用完整性约束: 通配符:

LlingXxiaoYyu的博客 150

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

MySQL学习笔记

MySQL学习笔记

前端码农 154

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

2024年MySQL—SQL基础(DDL、DCL、约束)_约束是mysql中的dcl吗,2024大厂Java开发面试总结+解答

文章中涉及到的知识点我都已经整理成了资料,录制了视频供大家下载学习,诚意满满,希望可以帮助在这个行业发展的朋友,在论坛博客等地方少花些时间找资料,把有限的时间,真正花在学习上,所以我把这些资料,分享出来。相信对于已经工作和遇到技术瓶颈的朋友们,在这份资料中一定都有你需要的内容。本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录需要这份系统化的资料的朋友,可以点击这里获取。

2401_84584628的博客 814

SQL Server 创建表,添加约束

新建表,添加删除约束

yufeiyufei_fei的博客 2万+

SQL Server中用T-SQL语句实现(建表、键约束、建关系)

前言     本文将会用T-SQL 语句实现建表、建约束、建关系。 一. 对表进行操作   1.1 创建表 --使用 create table 语句创建表 语法: create table 表名(字段 数据类型 约束) 例如: create table Student( StudentId int , --学生编号 ...

自学之路←_← 6495

SQL 基础(二)数据表的创建、约束、修改、查看、删除

数据类型 数据类型 含义 CHARACTER(n) 字符/字符串。固定长度 n。 VARCHAR(n) 或 CHARACTER VARYING(n) 字符/字符串。可变长度。最大长度 n。 BINARY(n) 二进制串。固定长度 n。 BOOLEAN 存储 TRUE 或 FALSE 值 VARBINARY(n) 或 BINARY VARYING(n) 二进制串。可变长度。最大长度 n。 INTEGER(p) 整数值(没有小数点)。精度 p。 SMALLINT 整数值

董哲朋的博客 1万+

02.SQL Server(表创建及约束)

在使用数据库的过程中,接触最多的就是数据库中的表,表中存放了数据库中的所有数据,所以表是SQL Server数据库系统的基本信息存储结构,也是数据库中你那个最重要的部分,管理好表自然就管理好了数据库。 1.数据表概述 数据表是数据库最重要的组成部分之一。数据库只是一个框架,数据表才是其实质内容,所有数据存储在数据表中。根据信息的分类情况,一个数据库中可能包含若干个数据表 。 在创建数据表的过程中,因为要定义表中的字段,需要为字段选定数据类型,下面介绍SQL Serv...

淡独东执 4714

创建和操纵表与约束

创建、修改、删除表,指定默认值,主键、外键、唯一约束的定义、添加、删除及外键级联操作。

2301_79609207的博客 3091

数据库的基本操作(创建表、查看表、修改表、删除表)

2、约束条件 (1) 设置主键约束 主键又叫主码,用于唯一标识记录的字段。格式一: 格式二: (2)设置自增约束 如果用户希望某个字段能够按照顺序自动生成编号,可以为该字段设置自增约束。格式: (3)设置非空约束 用户在向数据表中插入数据时,如果设置非空约束的字段没有指定值,系统就会报错。 作用是规定字段的值不能为空 关键字:not null 格式: (4)设置唯一性约束 当数据表中某个字段的值不允许重复时,可以使用唯一性约束。格式一: 格式二: (5)设置无符号约束 作用:规定该字段所存储的数据不为

2301_81533855的博客 8554

Oracle创建表和约束、修改表

创建表 第一种方式,语法如下: --column_name:列名 --type:数据类型 --注意:多个列名之间用逗号分隔,最后一列不要加逗号 create table table_name( column_name type, column_name type ) 第二种方式,语法如下: --这种方式会自动导入数据,如不想要数据,可以加条件where 1=2,当然也可以导入你想要的数...

yhahaha_的博客 3100

【SQL Server】用sql命令创建表,修改表,创建约束

create table dept ( dept_id int constraint pk_dept primary key, -- dept表的主键,命名为pk_dept dept_name nvarchar(100) not null, dept_address nvarchar(100) ) create table emp ( emp_id int constraint pk_emp_id primary key, -- emp表的主键,命名为pk_emp_id emp_name.

m0_60370702的博客 1918

sql创建表、约束以及多表关联查询

一、创建表 (先简单说一下什么是表,表是一种结构化的文件,可以用来存储特定类型的数据。另外,在一个数据库中,表的名称是唯一的,不能重复。) 1、表约束 ①主键约束 (primary key):主键可以由一个字段或多个字段构成,但是设置为主键的字段在表中通常是唯一的值,并且不能随便修改也不能为空。 ②唯一约束(unique) :该列的值是惟一的,且可以为空 ③检查约束 (check): 规定该列的取...

weixin_44591067的博客 1505
上一篇: NSLayoutConstraint使用
下一篇: app版本更新提醒
JustinACE
博客等级 码龄12年 0粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值