如何利用SQL语句创建数据库详解

 更新时间:2022年06月16日 15:10:47   作者:有大病么你说  
数据库就是一个文件系统,访问数据的时候需要通过标准的SQL语言来完成,下面这篇文章主要给大家介绍了关于如何利用SQL语句创建数据库的相关资料,需要的朋友可以参考下

前言

SQL语言是集DDL、DML和DCL于一体的数据库语言

SQL语言主要由以下9个单词引导的操作语句来构成,但每一种语句都能表达复杂的操作请求

  • DDL语句引导词:Create(建立),Alter(修改),Drop(撤销)

模式的定义和删除,包括定义Database, Table,View,Index,完整性约束条件等,也包括定义对象(RowType行对象,Type列对象)

  • DML语句引导词:Insert,Delete,Update,Select

各种方式的更新与检索操作,如直接输入记录,从其他Table(由SubQuery建立)输入

各种复杂条件的检索,如直接查找,模糊查找,分组查找,嵌套查找等

各种聚集操作,求平均、求和、……等,分组聚集,分组过滤等

  • DCL语句引导词:Grant,Revoke

安全性控制:授权和撤销授权

建立数据库

包括两件事:定义数据库和表(DDL),向表中添加元组(DML)

DDL:

创建数据库(DB)

create database 数据库名;

创建DB中的Table(定义关系模式)

create table 表名(列名 数据类型 【Primary key| Unique】【Not null】

【,列名 数据类型 【Not null】,...】);

举例:定义学生表

Create Table Student(S# char(8) not null, Sname char(10), Ssex char(2), Sage integer, D# char(2), Sclass char(6));   // S#表示id

"【】"表示其括起的内容可以省略,"|"表示其隔开的两项可取其一

Primary key:主键约束。每个表只能创建一个主键约束。

Unique:唯一性约束(即候选键),可以有多个唯一性约束。

Not null:非空约束。选择Not null表明该列不允许有空值出现。

语法中的数据类型在SQL标准中有定义。

在SQL-92标准中定义的数据类型

  • char(n): 固定长度的字符串
  • varchar(n): 可变长度字符串
  • int: 整数 //有时不同系统也写作integer
  • numeric(p, q): 固定精度数字,小数点左边p位,右边p-q位
  • real: 浮点精度数字 //有时不同系统也写作float(n),小数点后保留n位
  • date: 日期(如2021-09-12)
  • time: 时间(如15:25:00)
  • ...

现行商用DBMS的数据类型有时和上面有些差异,请注意;和高级语言的数据类型总体上是一致的,但也有些差异。

  • 定义Table及其各个属性的约束条件(完整性约束)
  • 定义View(定义外模式及E-C映像)
  • 定义Index、Tablespace……等(定义物理存储参数)
  • 上述各种定义的撤销与修正

DDL通常由DBA来使用,也有DBA授权后由应用程序员来使用

包括两件事:定义数据库和表(DDL),向表中添加元组(DML)

DML:

  1. 向Table中追加新的元组:Insert
  2. 修改Table中某些元组的某些属性的值:Update
  3. 删除Table中的某些元组:Delete
  4. 对Table中的数据进行各种条件的检索:Select

DML通常由用户或应用程序员使用,访问经授权的数据库

向表中追加元组

insert into 表名【(列名)【,列名】…】

        values(值【,值】,…);

示例:追加学生表中的元组

Insert Into Student

Values(‘08042202’,‘张三’,‘男’,20,‘03’,‘080422’);

Insert Into Student(S#,Sname,Ssex,Sage,D#,Sclass)

Values(‘08042202’,‘张三’,‘男’,20,‘03’,‘080422’);

values后面值的排列,须与into子句后面的列名排列一致

若表名后的所有列名省略,则values后的值的排列,须与该表存储中的列名排列一致

总结

到此这篇关于如何利用SQL语句创建数据库的文章就介绍到这了,更多相关SQL语句创建数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 使用Dbeaver远程连接Hive的详细方法

    使用Dbeaver远程连接Hive的详细方法

    这篇文章主要介绍了使用Dbeaver远程链接Hive的详细方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • YII2数据库查询实践

    YII2数据库查询实践

    这篇文章主要介绍了YII2数据库查询实践的相关资料,需要的朋友可以参考下
    2016-01-01
  • 关于ADOX的相关知识

    关于ADOX的相关知识

    关于ADOX的相关知识...
    2006-12-12
  • StoneDB主从配置及切换实践方案

    StoneDB主从配置及切换实践方案

    这篇文章主要介绍了StoneDB主从配置及切换实践方案的相关资料,需要的朋友可以参考下
    2022-10-10
  • sql语句创建外键关联的完整实例

    sql语句创建外键关联的完整实例

    这篇文章主要给大家介绍了关于sql语句创建外键关联的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • sql server中datetime字段去除时间代码收藏

    sql server中datetime字段去除时间代码收藏

    sql下把datetime字段的时间去除的方法整理收集
    2008-04-04
  • SQL 按特定字段值排序

    SQL 按特定字段值排序

    SQL 按特定字段值排序的代码,有需要的朋友可以参考下。
    2009-08-08
  • Navicat11全系列激活教程图文详解(Navicat注册机)

    Navicat11全系列激活教程图文详解(Navicat注册机)

    这篇文章主要介绍了Navicat11全系列激活教程图文详解(注册机),本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 开源数据库设计神器chiner的安装及初体验介绍

    开源数据库设计神器chiner的安装及初体验介绍

    最近在造轮子,从 0 到 1 的那种,就差前台的界面了,大家可以耐心耐心耐心期待一下。其中需要设计一些数据库表,可以通过 Navicat 这种图形化管理工具直接开搞,也可以通过一些数据库设计工具来搞,比如说 PowerDesigner,更专业一点
    2022-02-02
  • NoSQL数据库的分布式算法详解

    NoSQL数据库的分布式算法详解

    系统的可扩展性是推动NoSQL运动发展的的主要理由,包含了分布式系统协调,故障转移,资源管理和许多其他特性。尽管NoSQL运动并没有给分布式数据处理带来根本性的技术变革,但是依然引发了铺天盖地的关于各种协议和算法的研究以及实践。
    2015-09-09

最新评论