数据库——SQL数据定义
数据定义
SQL的数据定义语句
|
操 作 对 象 |
操 作 方 式 |
||
|
创 建 |
删 除 |
修 改 |
|
|
表 |
CREATE TABLE |
DROP TABLE |
ALTER TABLE |
|
视 图 |
CREATE VIEW |
DROP VIEW |
|
|
索 引 |
CREATE INDEX |
DROP INDEX |
|
一、定义基本表
[例1]建立学生表Student
CREATE TABLE Student
(Sno CHAR(5) PRIMARY KEY,
Sname CHAR(20) ,
Ssex CHAR(1) ,
Sage INT,
Sdept CHAR(15));
常用数据类型
CHAR(n) 字符型
INT 整型
NUMERIC ( 精度,小数) 实型
DATE 日期型
NUMERIC ( 8,2) 表示精度8位,有2位小数,6位整数
[例2] 建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩Grade组成,其中(Sno, Cno)为主码。
CREATE TABLE SC(
Sno CHAR(5) ,
Cno CHAR(3) ,
Grade INT,
Primary key (Sno, Cno));
建立表时,系统会将表的结构描述存入数据字典中
在SQL SERVER中, 数据字典称为系统表
数据字典===系统表===数据库模式
SQL SERVER中, 与TABLE有关的系统表:
sysobjects 数据库对象
syscolumns 列
二、修改基本表
ALTER TABLE <表名>
[ ADD <新列名> <数据类型> [ 完整性约束 ] ]
[ DROP <原列名>|<完整性约束名> ]
[ALTER COLUMN <原列名> <数据类型> ];
[例3] 向Student表增加“入学时间”列,其数据类型为日期型。
ALTER TABLE Student ADD Scome DATE;
不论基本表中原来是否已有数据,新增加的列一律为空值。
三、删除基本表
DROP TABLE <表名>;
删除表时,系统会从数据字典中删去有关该表的描述
[例4] 删除Student表
DROP TABLE Student ;
四.索引的建立与删除
建立索引是加快查询速度的有效手段
[例5] 为Student的sname列建立索引。
CREATE INDEX StuName ON Student(Sname);
语句格式:
CREATE INDEX <索引名>
ON <表名>(<列名 [,<列名> ]…);
[例6] 为Course的Cname列建立唯一值索引。
CREATE UNIQUE INDEX CouName ON Course(Cname);
删除索引
DROP INDEX <索引名>;
删除索引时,系统会从数据字典中删去有关该索引的描述。
[例7] 删除Student表的Stusname索引。
DROP INDEX Stusname;
数据库——SQL数据定义的更多相关文章
- SQL - 数据定义
SQL 的数据定义功能包括模式定义.表定义.视图和索引的定义: 操作对象 操作方式 创建 删除 修改 模式 create schema drop schema 表 create table d ...
- Orcale 之 SQL 数据定义
SQL 的数据定义功能主要是针对数据对象进行定义的,这些数据对象主要包括:表,视图以及索引. 注意:由于视图是基于表的虚表,而索引是依附在基表上的,所以视图和索引均不提供修改视图和索引定义的操作.如果 ...
- Oracle数据库教程-数据定义语言(表操作)
创建表 建表语法: CREATE TABLE 表名 ( 列1 数据类型 [primary key], 列2 数据类型 default 默认值 [not null], …, constraint 约束名 ...
- mysql数据库-mysql数据定义语言DDL (Data Definition Language)归类(六)
0x01 创建数据库并指定字符集和排序规则 -- 三种实例写法 create database temptab2 character set utf8 collate utf8_general_ci; ...
- 数据库——SQL数据连接查询
连接查询 查询结果或条件涉及多个表的查询称为连接查询SQL中连接查询的主要类型 广义笛卡尔积 等值连接(含自然连接) 自身连接查询 外连接查询 一.广义笛卡尔积 不带连 ...
- 数据库——SQL数据单表查询
数据查询 语句格式 SELECT [ALL|DISTINCT] <目标列表达式> [,<目标列表达式>] … FROM <表或视图名>[,<表或视图名&g ...
- ClickHouse数据库数据定义手记之数据类型
前提 前边一篇文章详细分析了如何在Windows10系统下搭建ClickHouse的开发环境,接着需要详细学习一下此数据库的数据定义,包括数据类型.DDL和DML.ClickHouse作为一款完备的D ...
- 数据库-SQL查询语言(一)
SQL数据定义 DDL sql的DDL不仅能定义一组关系,还能定义每个关系的信息,包括: 每个关系的模式 每个属性的取值类型 完整性约束 每个关系的维护的索引集合 每个关系的安全性和权限信息 每个关系 ...
- 支持SQL Server数据库又支持MongoDB数据库的数据访问设计
网站整体架构建议采用工厂模式 分别包括:数据访问层DAL,数据访问接口层IDAL,工厂层DALFactory,业务逻辑层,显示层这样的架构方式 在WebConfig配置采用何种数据库的数据访问层 &l ...
随机推荐
- MySQL(二)索引背后的数据结构及算法原理
本文转载自CodingLabs,原文链接 MySQL索引背后的数据结构及算法原理 目录 摘要 一.数据结构及算法基础 1. 索引的本质 2. B-Tree和B+Tree 3. 为什么使用B-Tree( ...
- Spring源码分析(八)AbstractBeanDefinition属性
摘要:本文结合<Spring源码深度解析>来分析Spring 5.0.6版本的源代码.若有描述错误之处,欢迎指正. 在上一篇中已经完成了XML文档到GenericBeanDefiniton ...
- Netflix中的负载均衡策略
Spring Cloud的负载均衡策略可以通过配置Ribbon搞定,也就是注入实现com.netflix.loadbalancer.IRule的类,当前包含的策略包括 1.RandomRule 随机策 ...
- oracle 数据库更新 新增 修改 删除
数据增加 INSERT INTO 表名称 [(字段,字段,...)] VALUES (值,值,...) ; 考虑到日后代码的可维护性,一定要使用完整的语法进行数据的增加. 数据修改 UPDATE 表名 ...
- 浅析 golang interface 实现原理
interface 在 golang 中是一个非常重要的特性.它相对于其它语言有很多优势: duck typing.大多数的静态语言需要显示的声明类型的继承关系.而 golang 通过 interfa ...
- Ajax第一天——入门与基本概念
什么是Ajax Ajax被认为是(Asynchronous JavaScript and XML的缩写).异步的js和xml 异步和同步:同步->类似打电话,接完一个再接下一个:异步:-> ...
- # 2017-2018-1 20155224 《信息安全系系统设计基础》第四周MyOD
2017-2018-1 20155224 <信息安全系系统设计基础>第四周MyOD 在这里跟老师先道歉,当时我的git没有安装好,后面也一直没有装上,所以程序没有git. 要求 参考教材第 ...
- 2018下学期C语言学习总结
怎么说呢,2018年下学期已经过去了,2019年的上学期又来了,在2018年没有达到自己想要的结果,希望2019年可以达到,加油!我希望我以后可以又快又准确的完成C语言的编程,学习好所以关于电脑的基础 ...
- 【BZOJ1051】[HAOI2006]受欢迎的牛
[BZOJ1051][HAOI2006]受欢迎的牛 题面 bzoj 洛谷 题解 假如\(A\)喜欢\(B\)就连一条\(A\)到\(B\)的边 然后缩点,如果图不连通就\(Impossible\) 否 ...
- Codeforces Round #452 (Div. 2)
第一次打..(太弱(+99积分是几个意思 A 题意:一堆数,只有1和2,问最多凑出多少个3. 分情况即可 #include<cstdio> int main(){ int a=0,b=0, ...