SQL语言学习-数据定义语言
Sql语言至今已经有6个版本。SQL查询语言包括了所有对数据的操作命令,这些操作可分为四类:数据定义语言(DDL)、数据操纵语言(DML)、数据控制语言(DCL)和嵌入式SQL语言。
数据定义语言(Data Defination Language)用于定义数据库对象。基本的DDL命令包括:Create、alter、drop。
数据操纵语言(Data Manipulation Language)用于数据的检索和数据的更新,数据更新包括:Insert、Delete、Update。数据检索由Select完成。
数据控制语言(Data Control Language)包括权限的授权(Grant)、撤销(Revoke)、完整性规则的描述以及事务开始和结束等控制语句。
嵌入式SQL语言规定了SQL语言在宿主程序中的使用规则。
1.建立数据表
Create负责数据库对象的建立。数据库、数据表、数据库索引、存储过程、触发器等都可以通过Create创建。
Create建表:
CREATE TABLE [dbo].[Customer](
[CusID] [numeric](18, 0) NOT NULL,
[RegID] [int] NOT NULL,
[CusName] [varchar](50) NOT NULL,
[CusPhone] [varchar](20) NOT NULL,
[CusAddress] [varchar](100) NOT NULL,
[CusRedate] [date] NULL,
[CusCredit] [int] NOT NULL,
[CusPrepay] [numeric](10, 0) NULL,
CONSTRAINT [PK_CUSTOMER] PRIMARY KEY CLUSTERED
(
[CusID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
CONSTRAINT [UNI_CUST] UNIQUE NONCLUSTERED
(
[CusName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
Create建表
create table table_name( column datatype [column level constraint])
比如 create table test(id integer constraint PK_TEST primary key,
name varchar(50) not null unique,stuid integer not null,constraint FK_Student foreign key references Student(stuid))
通过该代码 能够创建test的表 并能定义id、name、stuid 三列。其中id为主键、stuid为外键。 外键的表必须是已经存在的表。
2.更改数据表
在数据表的使用过程中,可能需要对表的结构或者约束进行修改。alter就是负责数据库对象修改的指令。对于数据库可以使用 alter table tablename modification.modification 是指定修改内容的子句。
比如:表中增加一列:alter table test add age integer
删除一列:alter table test drop column age
更改列明: oracle中:alter table test rename age to ages. sql中:EXEC sp_rename 'customer.[age]','ages','column'
更改数据类型:SQl中:alter table test alter column ages varchar(20),oracle中:alter table test modify ages integer
添加约束:alter table test add constraint uni_ages unique(ages)
禁用约束:Alter Table Account NOCHECK constraint Fk_Student
3.删除数据表
删除数据库对象的操作使用drop指令完成。drop table table_name.
SQL语言学习-数据定义语言的更多相关文章
- SQL语句之数据定义语言(DDL)详解
操作对象:数据库 1)创建数据库 MariaDB [(none)]> help create databaseName: 'CREATE DATABASE'Description:Syntax: ...
- sql 两大类 DDL数据定义语言 和DCL数据控制语言
SQL分为五大类: DDL:数据定义语言 DCL:数据控制语言 DML:数据的操纵语言 DTL:数据事务语言 DQL:数据查询语言. DDL (date definition lang ...
- oracle学习笔记(三) DCL 数据控制语言与 DDL 数据定义语言
DCL 数据控制语言 Data control language 之前说过的授权和收权利语句 grant, revoke DDL 数据定义语言 Data define language create ...
- ODPS SQL <for 数据定义语言 DDL>
数据定义语言:(DDL) 建表语句: CREATE TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment ...
- Oracle language types(语言种类) 表的相关操作 DDL数据定义语言
数据定义语言 Data Definition Language Statements(DDL)数据操纵语言 Data Manipulation Language(DML) Statements事务控制 ...
- DDL(数据定义语言)
1.Oracle中常见的数据类型分类:(A) 1.number(x,y) 数字类型,x表示最大长度,y表示精度对应java中除char外所有基本数据类型(byte.short.int.long.flo ...
- Hive 官方手册翻译 -- Hive DDL(数据定义语言)
Hive DDL(数据定义语言) Confluence Administrator创建, Janaki Lahorani修改于 2018年9月19日 原文链接 https://cwiki.apache ...
- mysql DDL数据定义语言
DDL数据定义语言 本节涉及MySQL关键字:create.alter(rename,add,chang,modify,drop).drop.delete.truncate等. -- 创建表:-- 数 ...
- CREATE TABLE——数据定义语言 (Data Definition Language, DDL)
Sql语句分为三大类: 数据定义语言,负责创建,修改,删除表,索引和视图等对象: 数据操作语言,负责数据库中数据的插入,查询,删除等操作: 数据控制语言,用来授予和撤销用户权限. 数据定义语言 (Da ...
随机推荐
- iOS动画一点也不神秘————你是喜欢看幻灯片?还是看高清电影?
iOS设备在平均线上硬件比andorid设备良好许多,尤其是内存和CPU,所以iOS应用里面有大量动画交互效果的交互,这是每个用户都喜悦的,如果每个操作对应界面来讲都是直接变化,那变得十分地生硬. 你 ...
- ZOJ Monthly, June 2014 月赛BCDEFGH题题解
比赛链接:点击打开链接 上来先搞了f.c,,然后发现状态不正确,一下午都是脑洞大开,, 无脑wa,无脑ce...一样的错犯2次.. 硬着头皮搞了几发,最后20分钟码了一下G,不知道为什么把1直接当成不 ...
- Js apply 方法 具体解释
Js apply方法具体解释 我在一開始看到javascript的函数apply和call时,很的模糊,看也看不懂,近期在网上看到一些文章对apply方法和call的一些演示样例,总算是看的有点眉目了 ...
- C#自定义控件在添加引用后不显示在工具箱的解决方法
先说一些背景: 在开发C#项目时,发现很多控件存在复用的情况,控件的属性都是要设置成一样的,我就想,能不能设置一个类来存放这个控件,这样我每次用的时候直接加一些特殊的操作就可以了,不需要再次设置控件属 ...
- MVC中的错误过滤器无法拦截URL路径错误的解决办法
“/”应用程序中的服务器错误. 无法找到资源. 说明: HTTP 404.您正在查找的资源(或者它的一个依赖项)可能已被移除,或其名称已更改,或暂时不可用.请检查以下 URL 并确保其拼写正确. 请求 ...
- JS时间戳与日期类型格式相互转换
function datetime_to_unix(datetime){ var tmp_datetime = datetime.replace(/:/g,'-'); tmp_date ...
- tomcat日志分析详解
在server.xml里的<host>标签下加上 <Valve className="org.apache.catalina.valves.AccessLogValve&q ...
- HDU 5805 - NanoApe Loves Sequence (BestCoder Round #86)
先找相邻差值的最大,第二大,第三大 删去端点会减少一个值, 删去其余点会减少两个值,新增一个值,所以新增和现存的最大的值比较一下取最大即可 #include <iostream> #inc ...
- C语言-数据的快速引用
1.常量:程序运行中,不会改变 整形常量 实形常量 字符常量:使用单引号引起的单个字符或者转移字符 ‘a’ 字符串常量:使用双引号引起的单个或者多个字符序列 "ab",存储的时候, ...
- Mysql JOIN优化。
join性能自行百度,google 数据60w+,这里我只测试了一个limit , ) ,) AS C LEFT JOIN table2 AS B ON C.e_id=B.id; ) ,;