SQL定义语言(ACCESS2000中的语法)

access2000中

create 语句中可以实现的列级完整性约束:

not null(不为空)、unique(唯一)、primary key(定义主键) 、references<被参照表名>(定义外键和参照完整性)定义约束时可以用CONSTRAINT <约束名> 来标示这个约束。

注意:default 不能实现。另外,支持表级完整性约束。

例子1
CREATE TABLE tblCustomers (
CustomerID INTEGER CONSTRAINT PK_tblCustomers
PRIMARY KEY,
[Last Name] TEXT(50) NOT NULL,
[First Name] TEXT(50) NOT NULL,
Phone TEXT(10),
Email TEXT(50),
Address TEXT(40) )

CREATE TABLE aaa (sno text,
cno text,
[constraint pk_aa] primary key(sno,cno))(两个字段联合作主码,表级完整性约束条件)

2、access2000支持的文本类型
CREATE TABLE tblUITextDataTypes (
Field1_TEXT TEXT,
Field2_TEXT25 TEXT(25),
Field3_MEMO MEMO,
Field4_CHAR CHAR,
Field5_CHAR25 CHAR(25),
Field6_LONGTEXT LONGTEXT,
Field7_LONGCHAR LONGCHAR,
Field8_ALPHA ALPHANUMERIC,
Field9_ALPHA25 ALPHANUMERIC(25),
Field10_STRING STRING,
Field11_STRING25 STRING(25),
Field12_VARCHAR VARCHAR,
Field13_VARCHAR25 VARCHAR(25),
Field14_NOTE NOTE)

其它text只能通过Jet OLE DB provider 和ADO来执行。

CREATE TABLE tblCodeTextDataTypes
Field1_NTEXT NTEXT,
Field2_NTEXT25 NTEXT(25),
Field3_NCHAR NCHAR,
Field4_NCHAR NCHAR(25),
Field5_VARYING CHAR VARYING,
Field6_VARYING CHAR VARYING(25),
Field7_VARYING CHARACTER VARYING,
Field8_VARYING CHARACTER VARYING(25),
Field9_NATIONAL NATIONAL CHAR,
Field10_NATIONAL NATIONAL CHAR(25),
Field11_NATIONAL NATIONAL CHARACTER,
Field12_NATIONAL NATIONAL CHARACTER(25),
Field13_NATIONAL NATIONAL CHAR VARYING,
Field14_NATIONAL NATIONAL CHAR VARYING(25),
Field15_NATIONAL NATIONAL CHARACTER VARYING,
Field16_NATIONAL NATIONAL CHARACTER VARYING(25))

access 支持的数字类型:
CREATE TABLE tblUINumericDataTypes (
Field1_INT INT,
Field2_INTEGER INTEGER,
Field3_LONG LONG,
Field4_INTEGER1 INTEGER1,
Field5_BYTE BYTE,
Field6_NUMERIC NUMERIC,
Field7_REAL REAL,
Field8_SINGLE SINGLE,
Field9_FLOAT FLOAT,
Field10_FLOAT4 FLOAT4,
Field11_FLOAT8 FLOAT8,
Field12_DOUBLE DOUBLE,
Field13_IEEESINGLE IEEESINGLE,
Field14_IEEEDOUBLE IEEEDOUBLE,
Field15_NUMBER NUMBER,
Field16_SMALLINT SMALLINT,
Field17_SHORT SHORT,
Field18_INTEGER2 INTEGER2,
Field19_INTEGER4 INTEGER4)

其他的NUMERIC 数据类型的形式只能通过Jet OLE DB provider 和 ADO来执行

CREATE TABLE tblCodeNumericDataTypes (
Field1_TINYINT TINYINT,
Field2_DECIMAL DECIMAL,
Field3_DEC DECIMAL,
Field4_DPRECISION DOUBLE PRECISION)

货币类型:
CREATE TABLE tblCurrencyDataTypes (
Field1_CURRENCY CURRENCY,
Field2_MONEY MONEY)

字节(BINARY )数据类型
CREATE TABLE tblUIBinaryDataTypes (
Field1_BINARY BINARY,
Field2_BINARY250 BINARY(250),
Field3_VARBINARY VARBINARY,
Field4_VARBINARY250 VARBINARY(250))

其他的binary 数据类型的同义字只能通过Jet OLE DB provider 和 ADO来执行

如下所示:

CREATE TABLE tblCodeBinaryDataTypes (
Field1_BVARYING BINARY VARYING,
Field2_BVARYING250 BINARY VARYING(250))

OLEOBJECT 数据类型
OLEOBJECT 数据类型用来存储大的二进制对象,比如Word文档或者Excel表单。它的字节数并不确定,最大可达2.14 GB。

其同义字有:IMAGE、LONGBINARY、GENERAL 和 OLEOBJECT

下面的 CREATE TABLE 语句展示了通过Access SQL View 用户界面或Jet OLE DB provider和ADO 来创建表时使用OLEOBJECT 数据类型。

CREATE TABLE tblImageDataTypes (
Field1_IMAGE IMAGE,
Field2_LONGBINARY LONGBINARY,
Field3_GENERAL GENERAL,
Field4_OLEOBJECT OLEOBJECT)
日期时间(DATETIME)数据类型 日期时间(DATETIME)数据类型用来存储日期、时间以及日期和时间的结合值,年数可以从100到 9999。它使用8个字节的存储量,其同义字有DATE、TIME、DATETIME和 TIMESTAMP

下面的 CREATE TABLE 语句展示了通过Access SQL View 用户界面或Jet OLE DB provider 和 ADO 创建表示所使用的DATETIME 数据类型的不同形式。

CREATE TABLE tblDateTimeDataTypes (
Field1_DATE DATE,
Field2_TIME TIME,
Field3_DATETIME DATETIME,
Field4_TIMESTAMP TIMESTAMP)

COUNTER 数据类型

COUNTER 数据类型用来存储长整型数值,该数值在表中每增加一条新的纪录时能够自动增加。使用COUNTER 数据类型,用户可以设定一个种子值和增加值,种子值是当第一个记录插入到表中时将输入到域中的数值,而增加值用来加到上一个记数值上作为下一个记数值。如果没有指定种子值和增加值,它们都将缺省的使用1。在一个表中只能有一个COUNTER域。

其同义字有 COUNTER、AUTOINCREMENT和IDENTITY。

下面的 CREATE TABLE 语句展示了通过Access SQL View 用户界面创建表时使用的COUNTER 数据类型的同义字。

CREATE TABLE tblUICounterDataTypes (
Field1 COUNTER,
Field2 TEXT(10))
注意这里没有指定种子值和增加值,所有都将采用缺省值1。

定义COUNTER 数据类型的另一种方式是使用AUTOINCREMENT 关键字,如下所示:

CREATE TABLE tblUICounterDataTypes (
Field1 AUTOINCREMENT(10,5),
Field2 TEXT(10))

这一次种子值和增加值都指定了,则开始值时10,每次将加5。上面的SQL 语句也可以通过Jet OLE DB provider 和 ADO执行,另外还有counter 数据类型的另一种形式,只能通过Jet OLE DB provider 和 ADO来执行,即IDENTITY 关键字,它和SQL Server的 IDENTITY 数据类型是相兼容的。

CREATE TABLE tblCodeCounterDataTypes
Field1_IDENTITY IDENTITY(10,5),
Field2 TEXT(10))
这里的种子值和增加值都可以通过ALTER TABLE 语句进行修改,修改后所有新插入的行将使用新的值。但是, COUNTER 数据类型常常都是用于主键的,而主键要求每列唯一。如果你改变了种子值, 将可能导致主键域的重复值,从而发生错误。

ALTER TABLE tblUICounterDataTypes
ALTER COLUMN Field1 COUNTER(10,10)
注意: 如果某个现存的列已经包含了数据的话,用户不能使用ALTER TABLE 语句来将该列的数据类型改变为COUNTER 数据类型。

3、在建立或倒入一个数据表之后,用户可能需要修改表的设计。这时就可以使用ALTER TABLE语句。

但是注意,改变现存的表的结构可能会导致用户丢失一些数据。比如,改变一个域的数据类型将导致数据丢失或舍入错误,这取决于用户现在使用的数据类型。改变数据表也可能会破坏用户的应用程序中涉及到所改变的域的部分。所以用户在修改现有表的结构之前一定要格外小心。

使用ALTER TABLE 语句,用户可以增加,删除或改变列或域,也可以增加或删除一个约束。还可以为某个域设定缺省值,但是一次只能修改一个域
ALTER TABLE tblCustomers
ADD CONSTRAINT CustomerName primary key
(customerid,[Last Name])(两个字段联合作主码)
要删除一个约束,可以在ALTER TABLE 语句中使用DROP CONSTRAINT 子句,并给出约束的名称。
删除约束
ALTER TABLE tblCustomers
DROP CONSTRAINT PK_tblCustomers

添加列
ALTER TABLE tblCustomers
ADD COLUMN Address TEXT(30)
修改列大小
ALTER TABLE tblCustomers
ALTER COLUMN Address TEXT(40)
如果需要改变域的名称,则必须删除该域并重新创建。删除一个域要使用DROP COLUMN 子句,在其后跟上域的名称。

ALTER TABLE tblCustomers
DROP COLUMN Address
注意使用这种方法将会删除该域的现存数据。如果需要保存这些数据,则用户需要在Access的用户界面的设计模式中改变该域的名称,或者编写代码将现存的数据保存在一个临时的表中然后将其添加到改名后的表中。
3.删除基本表:

一般格式:DROP TABLE<表名>

二、建立与删除索引
1.建立:一般格式:
CREATE [UNIQUE] INDEX <索引名> ON<表名>(<列名>[<次序>]…)(asc,desc)
例子:CREATE INDEX STUSNAME ON STUDENT(SNAME);
2.删除索引
格式:DROP INDEX<索引名> ON<表名>

SQL定义语言(ACCESS2000中的语法)相关推荐

  1. Hive数据定义语言-DDL-建表基础语法(含四个实践案例)

    1. 概述 数据定义语言DDL,是SQL语言集中对数据库内部的对象结构进行创建.删除.修改等的操作语言,这些数据库对象包括database.table.view.index等. DDL核心语法由CRE ...

  2. SQL中DDL语句(数据表定义语言)

    表示数据表定义语言(凡是带有creata.drop.alter的都是DDL),DDL操作的是表的结构.不是表中的数据 目录 create(增加表) drop(删除表) truncate (删除表内数据 ...

  3. SQL中数据定义语言和数据操作语言的详细讲解

    我前面一篇博客讲解了什么是数据库中数据的定义语言和操作语言,接下来我们就详细讲解下 首先是数据的定义语言 1.CREATE DATABASE 语句 CREATE DATABASE 用于创建数据库. S ...

  4. SQL中数据操作语言 (DML) 和数据定义语言 (DDL)

     可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL). SQL (结构化查询语言)是用于执行查询的语法.但是 SQL 语言也包含用于更新.插入和删除记录的语法. ...

  5. 数据库原理与应用(SQL Server)笔记 第一章 数据定义语言和数据操纵语言

    文章目录 前言 一.基本介绍 二.在SQL里执行T-SQL语句 三.数据定义语言(DDL) (一)概述 (二)数据定义语言用于数据库 1.创建数据库 2.修改数据库 3.使用数据库 4.删除数据库 5 ...

  6. mysql中数据定义和数据控制语言_MySQL 数据定义语言(DDL)

    SQL 包含以下 4部分:1数据定义语言(DDL):DROP.CREATE.ALTER 等语句.2数据操作语言(DML):INSERT(插入).UPDATE(修改).DELETE(删除)语句.3数据查 ...

  7. sql 两大类 DDL数据定义语言 和DCL数据控制语言

    SQL分为五大类: DDL:数据定义语言   DCL:数据控制语言     DML:数据的操纵语言  DTL:数据事务语言  DQL:数据查询语言. DDL (date definition lang ...

  8. 【ClickHouse SQL 极简教程】ClickHouse SQL之数据定义语言 DDL

    1.1. ClickHouse SQL之数据定义语言 DDL  本节介绍 ClickHouse 中进行数据库.表结构的定义和管理. 1.1.1. 概述 在SQL中,数据定义语言( DDL ) 用来创建 ...

  9. 【数据库基础知识二】数据库DataBase(简称DB),数据库基本概念、DDL:数据定义语言,用来操作数据库对象、DML:数据操作语言,用来操作表中的数据

    14天阅读挑战赛 目录 数据库基本概念 数据库DataBase(简称DB) 数据库管理系统Database management system(简称DBMS) 如何操作DBMS? 连接数据库的方式: ...

最新文章

  1. pandas中dataframe的构造(csv等结构化文件读取,字典读取)以及保存
  2. npm包管理机制引质疑:又一安装程序中发现恶意代码,开发者账户频遭劫持
  3. 结对子作业 四则运算 V2.0
  4. 玛纽尔扫地机器人怎样_扫地机器人哪个牌子好?满足日常清洁需求才值得推荐...
  5. 【Java】计算1+3+5+7+9和100以内的素数
  6. 【Elasticsearch】es 集群健康值 红色 red 分片 未分配
  7. 因缺思汀的绕过——实验吧
  8. CSS 常见的8种选择器 和 文本溢出问题
  9. MEMZ病毒详细分析
  10. 制作一个模拟Windows启动界面的文本进度条python
  11. 浅谈红帽认证RHCE 8.0学习与考试
  12. 移动边缘计算 入门笔记(一)
  13. mysql添加开机自启_【实操篇】如何设置MySQL开机自启动
  14. 永久删除计算机文件怎么操作步骤,如何彻底删除电脑中的文件 永久删除文件方法...
  15. ecshop后台首页mysql_ECSHOP后台自带数据库管理
  16. 共享打印机(联想M7605D)出现0x00000709错误代码的解决方法
  17. JS(解构) 之数组和对象中提取数据总结
  18. unity语音聊天--亲加通讯云(Android/iOS)---ios
  19. h5页面跳转微信小程序页面
  20. android NSD service使用介绍

热门文章

  1. 关于网页版伪春菜橘花shell的加载方法研究
  2. hndlrsvc.exe
  3. 串口服务器 信号,串口服务器 串口通讯服务器 终端服务器 串口转以太网 串口联网 RS232转TCP/IP RS485转TCP/IP...
  4. 9.物体的几何表示——分形几何
  5. Django Rest_Framework(DRF)
  6. Unity城市虚拟搭建的时候,【房子】或【桥廊】跟随鼠标在【地面】或者【水面】移动
  7. RK3229平台Android6.0系统的一些定制性需求开发
  8. 企业如何强化5s管理制度
  9. 行业洞察 | 你的车载语音助手足够Smart吗?
  10. css设置各种中文字体如雅黑、黑体、宋体、楷体的方法