13.2 SQL语法
SQL
语句是对所有关系数据库都通用的命令语句,而JDBC API
只是执行SQL
语句的工具,JDBC
允许对不同的平台、不同的数据库采用相同的编程接口来执行SQL
语句。在开始JDBC
编程之前必须掌握基本的SQL
知识,本节将以MySQL
数据库为例详细介绍SQL
语法知识。
提示
除了标准的SQL
语句之外,所有的数据库都会在标准SQL
语句基础上进行扩展,增加一些额外的功能,这些额外的功能属于特定的数据库系统,不能在所有的数据库系统上都通用。因此,如果想让数据库应用程序可以跨数据库运行,则应该尽量少用这些属于特定数据库的扩展。
13.2.2 关系数据库基本概念和MySQL基本命令
严格来说,数据库(Database
)仅仅是存放用户数据的地方。当用户访问、操作数据库中的数据时,就需要数据库管理系统的帮助。数据库管理系统的全称是Database Management System
,简称DBMS
。习惯上常常把数据库和数据库管理系统笼统地称为数据库,通常所说的数据库既包括存储用户数据的部分,也包括管理数据库的管理系统。DBMS
是所有数据的知识库,它负责管理数据的存储、安全、一致性、并发、恢复和访问等操作。DBMS
有一个数据字典(有时也被称为系统表),用于存储它拥有的每个事务的相关信息,例如名字、结构、位置和类型,这种关于数据的数据也被称为元数据(metadata
)。
对于关系数据库而言,最基本的数据存储单元就是数据表,因此可以简单地把数据库想象成大量数据表的集合
数据表是存储数据的逻辑单元,可以把数据表想象成由行和列组成的表格,其中每一行也被称为一条记录,每一列也被称为一个字段。
为数据库建表时,通常需要指定该表包含多少列,每列的数据类型信息,无须指定该数据表包含多少行——因为数据库表的行是动态改变的,每行用于保存一条用户数据。除此之外,还应该为每个数据表指定一个特殊列,该特殊列的值可以唯一地标识此行的记录,则该特殊列被称为主键列。
查看数据库
show databases;
删除数据库
drop database 数据库名称;
创建数据库
create database if not exists 数据库名称;
进入数据库
use 数据库名称;
查看数据库中的所有表格
show tables;
查看表结构
desc 表名
MySQL存储机制
MySQL
数据库通常支持如下两种存储机制。
MyISAM
:这是MySQL
早期默认的存储机制,对事务支持不够好。InnoDB
:InnoDB
提供事务安全的存储机制。InnoDB
通过建立行级锁
来保证事务完整性,并以Oracle
风格的共享锁
来处理Select
语句。系统默认启动InnoDB
存储机制,如果不想使用InnoDB
表,则可以使用skip-innodb
选项。
如果使用5.0以上版本的MySQL
数据库系统,通常无须指定数据表的存储机制,因为系统默认使用InnoDB
存储机制。如果需要在建表时
显式指定存储机制,则可在标准建表语法
的后面添加下面任意一句。ENGINE=MyISAM
–强制使用MyISAM
存储机制。ENGINE=InnoDB
–强制使用InnoDB
存储机制。
原文链接: 13.2 SQL语法