数据表 数据表(或称为表)是数据库最重要的组成部分之一,是其它对象的基
数据表(或称为表)是数据库最重要的组成部分之一,是其它对象的基础。
先来解决上一篇博客末尾说到的进入数据库验证的问题:
验证当前数据库是哪一个的MySQL命令为:
SELECT DATABASE();
例子:
SHOW DATABASES;
USE t1;
SELECT DATABASE();
MySQL语法中创建数据表的语法格式为:
CREATE TABLE [IF NOT EXISTS] table_name(
column_name data_type,
....);
例子:
<span style="font-size:18px;">CREATE TABLE tb1 ( username VARCHAR(20), age TINYINT UNSIGNED, salary FLOAT(8,2) UNSIGNED );</span>
查看当前数据库中的数据表列表的语法格式为:
SHOW TABLES [FROM db_name] [LIKE 'pattern' | WHERE expr];
例子:
默认情况下,如果不写数据库名称就是查看当前数据库(数据库t1)下的数据表列表:
SHOW TABLES;
我们在这里不仅可以当前数据库,也可以查看其它数据库中的数据表列表,并且当前的数据库还是打开的那个数
据库(也就是数据库t1),并不会改变。
例子:在这里我们查询MySQL服务中自带的mysql数据库中的数据表列表
SHOW TABLES FROM mysql;
SELECT DATABASE();
查看一个数据表的结构的语法格式为:
SHOW COLUMNS FROM table_name;
在其它的地方,我还看到了另一个查看数据表结构的语法:
DESC table_name;
验证了一下,同样的适用。
例子:
SHOW COLUMNS FROM tb1;
DESC tb1;
插入记录的语法格式:
INSERT [INTO] table_name [(col_name,...)] VALUES(val,...);
例子:如果省略到所有字段,就是给全部的字段都来赋值:
INSERT tb1 VALUES('Tom',25,7334.25);
如果我们省略一个字段的值不写就会报错,
INSERT tb1 VALUES('Tom',25);如果我们只想给某一个或某些字段赋值,就要写出那些赋值的字段的名称:
INSERT tb1(username,age) VALUES('john',22);
查找记录的语法格式(这里只是简单的记录查看,后面我们会介绍详细的记录查看语法格式):
SELECT expr,... FROM table_name;
例子:
列出某数据表的全部字段(以后详细介绍)。
SELECT * FROM tb1;
NULL,表示字段值可以为空。
NOT NULL,表示字段值禁止为空。
例子:
<span style="font-size:18px;">CREATE TABLE tb2( username VARCHAR(20) NOT NULL, age TINYINT UNSIGNED NULL );</span>
SHOW COLUMNS FROM tb2;
假设我们现在插入记录:
INSERT tb2 VALUES('Tom',NULL);
SELECT * FROM tb2;
INSERT tb2 VALUES(NULL,23);
下一篇MySQL的文章我们继续操作数据表,并且会初步设计约束的知识。