ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

数据库——SQL语言(一)

2021-11-07 16:58:45  阅读:153  来源: 互联网

标签:INDEX 语言 数据库 DROP 模式 索引 SQL CREATE 定义


SQL语言(一)

概述

SQL特点:
综合统一
高度非过程化
以同一种语言结构提供多种使用方法
语言简洁易学易用

image-20211107155139050

基本表
本身独立存在的表
一个关系就对应一个基本表
一个或多个基本表对应一个存储文件
一个表可以带若干索引

存储文件

视图(虚表)

数据定义

image-20211107155521320

创建删除修改
模式CREATE SCHEMADROP SCHEMA
CREATE TABLEDROP TABLEALTER TABLE
视图CREATE VIEWDROP VIEW
索引CREATE INDEXDROP INDEXALTER INDEX

image-20211107155853915

定义模式

CREATE SSCHEMA "模式名" AUTHORIZATION (WANG 用户名)

模式名可以缺省,表示采用和用户名一样的模式名

定义模式实际上定义了一个命名空间(目录)定义模式的同时可以定义表和视图和授权定义的子句 CREATE SCHEMA <模式名> AUTHORIZATION <用户名>[<表定义子句>|<视图定义子句>|<授权定义子句>]

DROP SCHEMA <模式名> <CASCADE | RESTRICT>

CASCADE(级联)——删除模式的同时吧模式中的所有数据库对象全部删除

RESTRICT(限制)——如果模式中定义了相熟的数据库对象,拒绝执行,必须先删除下属对象

定义基本表

CREATE TABLE <表名> (<列名> <数据类型>[<列级完整性约束条件>] 组成 该表的列 [,<列名><数据类型>[<列级完整性约束条件>]]…… [,<表级完整性约束条件>]);

image-20211107161146165

image-20211107161346400

定义基本表所属模式的方式:
■方法一: 在表名中明显地给出模式名
Create table"S-T" Stde...... /*模式名为S-T*/ Create table "S-T".Cource....); Create table "S-T".....;
■方法二: 在创建模式的同时创建表
■方法三: 设置所属的模式

创建基本表(其他数据库对象也一样)时,若没有指定模式,系统根据搜索路径来确定该对象所属的模式关系数据库管理系统会以“搜索路径”指向的模式作为数据库对象的模式名设置搜索路径的方式:
SET search_ path TO "S-T",PUBLIC;

ALTER TABLE <表名> [ADD[COLUMN] <新列名><数据类型> [完整性约束]] [ADD <表级完整性约束>] [DROP [ COLUMN] <列名> [CASCADE| RESTRICT]] [DROP CONSTRAINT<完整性约束名>[ RESTRICT | CASCADE ] ] [ALTER COLUMN <列名><数据类型>] ;

索引的定义

建立索引的目的:加快查询的速度

常见索引:顺表文件上的索引,B+树索引(动态平衡),哈希索引(快),位图索引

CREATE [UNIQUE] [CLUSTER] INDEX <索引名> ON <表名>(<列名>[<次序>][,<列名>[<次序>].].); <表名>:要建索引的基本表的名字 索引:可以建立在该表的一列或多列上,各列名之间用逗号分隔 <次序>:指定索引值的排列次序,升序: ASC,降序: DESC。缺省值: ASC UNIQUE:此索引的每一个索引值只对应唯一的数据记录 CLUSTER: 表示要建立的索引是聚簇索引

修改索引——ALTER INDEX <旧索引名> RENAME TO <新索引名>

删除索引——DROP INDEX <索引名>;

标签:INDEX,语言,数据库,DROP,模式,索引,SQL,CREATE,定义
来源: https://blog.csdn.net/FallToHer/article/details/121193679

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有