SQL 必知必会-- 第17课:创建和操作表
我这里用的是oracle 10g,PL/SQL来做的。
17.1 创建表 145
17.2 更新表 150
17.3 删除表 153
17.4 重命名表 153
17.5 小结 154
17.1 创建表
17.1.1 表创建:所有列放在小括号里面,各列之间用英文逗号隔开,最后一列后面没有逗号,小括号后面以英文分号结束。
create table vendors(
vend_id char(10) not null ,
vend_name char(50) not null ,
vend_address char(50) null ,
vend_city char(50) null ,
vend_state char(5) null ,
vend_zip char(10) null ,
vend_country char(50) null
);
17.1.2 使用null值 :
a,注意null值表示没有值或者缺值。空字符串('')是一个有效的值,它不是无值。
b,表里面的每一列要么是null列,要是是非null列,这是在创建表的时候,表的定义规定的。默认的是null.
c,只用指定不允许为null的列才可用于主键。主键是一列(或一组列),其值能够唯一标识表中的每一列。
17.1.3 制定默认值:default
默认值常用于日期或者时间戳列,通常是把系统日期用作默认日期。
获得系统日期
MySQL用户:select sysdate();
Oracle用户: select sysdate from dual;
17.2 更新表 :使用alter table时需要考虑的内容。
假如现有表student,
create table student(
snum number not null,
sname varchar2(100),
age number
);
对现有表新增一列或者多列:
alter table student add sex char(1);
alter table student add (address varchar2(100), email varchar2(50));
对现有表新增加主键:alter table 表名 add constraint 约束名 primary key(列名);
alter table student add constraint pk_student primary key(snum);
对现有表删除其中的某一列:alter table 表名 drop column 列名; alter table student drop column age;
复杂的表结构更改一般需要手动删除过程,它涉及以下步骤:
1、复制旧表到一个新表,create table new_table as select * from old_tables;
2、检验包含所需数据的新表
3、重命名旧表(如果确定,可以删除它)
4、用旧表原来的名字重新命名新表
5、根据需要,重新创建新表的触发器、存储过程、索引和外键。
*********************************************************************************************************
SQL 必知必会-- 第17课:创建和操作表的更多相关文章
- SQL 必知必会
本文介绍基本的 SQL 语句,包括查询.过滤.排序.分组.联结.视图.插入数据.创建操纵表等.入门系列,不足颇多,望诸君指点. 注意本文某些例子只能在特定的DBMS中实现(有的已标明,有的未标明),不 ...
- 你必知必会的SQL面试题
写在前面的话 本文参考原博<走向面试之数据库基础:一.你必知必会的SQL语句练习-Part 1>和<走向面试之数据库基础:一.你必知必会的SQL语句练习-Part 2>进行练习 ...
- 读书笔记--SQL必知必会--建立练习环境
书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL in 10 Minutes - Fourth Edition> MyS ...
- 图灵程序设计丛书(SQL必知必会)笔记
SQL必知必会 第二课:检索数据 1.分页 (1).SQL Server 栗子 : select top 2 columns from tableName (2).Oracle 栗子 :select ...
- .NET零基础入门09:SQL必知必会
一:前言 仿佛到了更进一步的时候了,每一个程序员迟早都会遇到数据存储的问题.我们拿什么来存储程序产生的数据?举例来说,用什么来存储我们的打老鼠游戏每次的成绩呢?选择如下: 1:内存中.缺点,退出游戏, ...
- SQL 必知必会 总结(一)
SQL必知必会 总结(一) 第 1 课 了解SQL 1.数据库(database): 保存有组织的数据容器(通常是一个文件或一组文件). 2.数据库管理系统(DBMS): 数据库软件,数据库是通过 D ...
- SQL必知必会 -------- SELECT、注释
主要是看<SQL必知必会>第四版的书,而写的一些SQL笔记,红色的是方便以后查询的sql语句,工作中主要是使用mysql数据库,所以笔记也是围绕mysql而写的. 下文调试的数据表sql语 ...
- 【SQL必知必会笔记(3)】SELECT语句的WHERE子句数据过滤操作
上个笔记主要介绍了利用SELECT语句检索单个/多个/所有列,并利用DISTINCT关键字检索具有唯一性的值.利用LIMIT/OFFSET子句限制结果:以及利用ORDER BY子句排序检索出的数据,主 ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
随机推荐
- HDu 1001 Sum Problem 分类: ACM 2015-06-19 23:38 12人阅读 评论(0) 收藏
Sum Problem Time Limit: 1000/500 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total ...
- C++11对象构造的改良
[C++11对象构造的改良] C++03中一个构造函数无法构造另一个构造函数,因为A()实际上意味着生成一个临时对象,存在语音混淆.详情请看参考2. C++11中允许直接在初始化列表中调用其它的构造函 ...
- 如何在Html的CSS中去除<li>标签前面小黑点,和ul、LI部分属性方法
div是很多人做网站都会用到的,但在显示效果时前面总是会有一个小黑点,这个效果很多人不想要,但又不知到如何去除,然而我们可以用以下方法来清除. 1.在CSS中写入代码.找到相关性的CSS,在..li和 ...
- js关闭当前页面(窗口)的几种方式总结
1. 不带任何提示关闭窗口的js代码 <a href="javascript:window.opener=null;window.open('','_self');window.clo ...
- sql server中的decimal或者numeric的精度问题
何谓精度:最多可以存储的十进制数字的总位数,包括小数点左边和右边的位数.该精度必须是从 1 到最大精度 38 之间的值.默认精度为 18. 小数位数:小数点右边可以存储的十进制数字的最大位数.小数位数 ...
- NHibernate分页
转载:http://www.cnblogs.com/tenghoo/archive/2011/02/14/1954393.html NHibernate专题:http://kb.cnblogs.com ...
- T4模板语法
T4,即4个T开头的英文字母组合:Text Template Transformation Toolkit. T4文本模板,即一种自定义规则的代码生成器.根据业务模型可生成任何形式的文本文件或供程序调 ...
- Spket在Eclipse/MyEclipse下的安装和配置(图文教程)
一.安装Spket 第一种方法:网上更新方式 1.插件首页:http://www.spket.com2.插件名称:Spket IDE3.更新连接(Update Site):http://www.spk ...
- CSS布局经验谈
1.盒子模型 CSS最具特色也是最本质的可以浓缩成盒子模型. 整个页面可以通过大盒子套小盒子,盒子挨着盒子放,摆成一个页面即可. 盒子即所谓的块元素,只有块元素才有宽和高,有了宽和高才能使盒子挨着盒子 ...
- 收集计算机分区信息,去除列中的重复值(Excel)(空行)
收集计算机分区信息 $servers = gc D:\serverlist.txt $result = $results = $null $results = @() foreach ($server ...