首页 > 数据库 > 文库 > 正文

SQL结构化查找语 之DDL语言

2024-09-07 22:12:49
字体:
来源:转载
供稿:网友
       SQL结构化查找语 之DDL语言:

  一、SQL结构化查询语言概述
  SQL是关系型数据库所使用的标准语言,最初是基于IBM的实现在1986年被批准的。1987年,“国际标准化组织(ISO)”把ANSI(美国国家标准化组织) SQL作为国际标准。
  1. SQL语言规范
 
  在数据库系统中,SQL语句关键词不区分大小写(建议用大写)
 
  数据库的资源对象是区分大小写的,如表、数据库这类资源在操作系统中以独立文件形来存储,如果文件系统对文件命名区分大小写则SQL语言内引用资源对象
  资源内的元素不区分大小写,如:表的字段名称不区分大小写,因为在操作系统中不是独立的文件。
  SQL语句可单行或多行书写,以“;”结尾。
  关键词不能跨多行或简写。
  用空格和缩进来提高语句的可读性(但并不强制)。
  子句通常位于独立行,便于编辑,提高可读性()。
 
  2.  数据库对象和命名
 
  >数据库的组件(对象):
  数据库、表、索引、视图、用户、存储过程、函数、触发器、事件调度器等这些资源对象基本上在操作系统中有独立的文件存储。
  >命名规则:
  必须以字母开头,可包括数字和三个特殊字符(# _ $)
  不要使用MySQL的保留字
  同一database(Schema)下的对象不能同名
  一、数据库管理操作:
  数据库的管理操作包括:创建、修改、删除、查看信息等操作
 
  1. 查看字符集
 
  show character set;
 
  2.  基于SQL脚本创建数据库:
 
  mysql < hellodb_innodb.sql -uroot -ppassword
 
  二、表管理操作
 
  注意:创建表之前一定要先指定在哪个数据库中创建。
 
  1. 查看表信息:
 
  DESC students; //desc 指定表名即可查看表结构
  SHOW TABLES FROM mysql; //查看指定数据库中都有哪些表。
  SHOW COLUMNS FROM mysql.user; //查看指定表都有哪些字段,执行结果与desc相同。
  SHOW CREATE TABLE vmlab/G; //查看创建vmlab表时执行的命令,即表是如何创建的。可以参考该方法创建脚本文件。
  SHOW TABLE STATUS LIKE 'students'/G; //查看表状态信息,比较常用可以显示字符集、创建时间、更新时间、表引擎等信息。
  SHOW TABLE STATUS FROM mysql/G; //查看指定数据库的所有表状态。
 
  2. 创建表
 
  注意事项,表内字段修饰符NO NULL被指定后则在添加记录时该字段必须指定值。一般建议第一列ID为主键,且自动增长。
  方法一:直接创建 ()内指定字段名称,存储的数据类型,修饰符等信息,不同定段字定义以逗号分隔
  CREATE TABLE students (id int UNSIGNED AUTO_INCREMENT PRIMARY KEY,name VARCHAR(10) NOT NULL,age TINYINT UNSIGNED);
  方法二:通过查询现存表创建,新表会被直接插入查询而来的数据(注意:此方法复制表结构,但不会复制字段的修饰符信息,原表的数据会被复制。)
  CREATE TABLE vmlab SELECT * FROM students;从students表提取数据创建新表vmlab
 
  方法三:通过复制现存表的表结构,但不复制数据(注意:此方法复制表结构,但不会复制原表的数据。)
  CREATE TABLE vmlab LIKE students;参考现存表students创建新表vmlab。

(编辑:武林网)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表