zoukankan      html  css  js  c++  java
  • 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建表:

     1 CREATE TABLE [dbo].[Customer](
     2     [CusID] [numeric](18, 0) NOT NULL,
     3     [RegID] [int] NOT NULL,
     4     [CusName] [varchar](50) NOT NULL,
     5     [CusPhone] [varchar](20) NOT NULL,
     6     [CusAddress] [varchar](100) NOT NULL,
     7     [CusRedate] [date] NULL,
     8     [CusCredit] [int] NOT NULL,
     9     [CusPrepay] [numeric](10, 0) NULL,
    10  CONSTRAINT [PK_CUSTOMER] PRIMARY KEY CLUSTERED 
    11 (
    12     [CusID] ASC
    13 )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY],
    14  CONSTRAINT [UNI_CUST] UNIQUE NONCLUSTERED 
    15 (
    16     [CusName] ASC
    17 )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    18 ) 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.

  • 相关阅读:
    DapperExtensions 使用教程
    C#事件订阅及触发例子
    01、类与结构的区别
    内网信息搜集
    Anydesk拿下远程桌面
    C++对注册表的操作
    Linux下常见流编辑器的使用
    Typecho1.1反序列化漏洞复现
    Nmap脚本编写
    Github学习
  • 原文地址:https://www.cnblogs.com/ggz19/p/4108641.html
Copyright © 2011-2022 走看看