数据库——从入门到精通———一步步教你玩转数据库

数据库

写在前面:

关键词含义
[ ]方括号代表该词条可选,不是必须填写的
db_name数据库名称(示例用)
tbl_name表名称(示例用)

一、SQL语句分类

SQL的英文全称:Structured Query Language 结构化查询语言

DDL:Data Definition Language数据定义语言

DQL:Data Query Language数据查询语言

DML:Data Manipulation Language数据操作语言

主要的为这3类;其余的还有:DCL:数据控制语言、TPL事务处理语言、CCL指针控制语言

1、DDL语句

Data Definition Language

常用关键字:create 、alter 、drop

作用:创建数据库和表结构等等

<1>常用语句表
语句功能语法备注
显示所有的数据库show databases;
创建数据库create database de_name ;默认编码:gbk
创建数据库(包含使用的字符集)create database de_name [charset=字符集名称(gbk、utf8等)];
显示数据库创建细节show create database db_name;
创建字符集为UTF8的数据库create database db_name charset=utf8;
删除 数据库drop database db_name;

下面我们一起来创建一个数据库

1、我们先确认下本机已有的数据库show databases; (这个步骤不必要的)

当使用显示数据库:show databases;时,在命令行会出现以下界面(如果你之前从未在该电脑上安装过数据库)

1554818632502

information_schema:用来维护其他所有数据库的信息 例如数据库名、数据

库的表格、表格字段的数据类型等等。

Mysql : 自带的一个数据库,不用动,例如创建的用户就保存在mysql中。

Performance_schema: 主要用于收集数据库服务器性能参数,DBA通过

performance_schema 得到的信息能够了 n解性能降低可能是由于哪些瓶颈.

Test: 自带的默认的数据库,可以随便使用。

2、创建一个数据库 create database;

1554819030718

3、使用这个数据库前可以先查看它的创建细节.show create database mydb1;

1554819516647

4、选择创建好数据库 use db_name;

使用我们先前创建的数据库mydb1;

1554819196577

5、查看当前使用的数据库 select database();

1554819366751

没毛病!!! 至此我们的第一个数据库已经创建完成。

接下来就是创建数据库的内容了!

在创建内容之前,我们要先确认数据库支持的数据类型

<2>MySQL支持的数据类型

MySQL支持多种数据类型,大致可以分为3类:数值、日期/时间和字符串(字符)类型;

注:表格中粗体字段需着重记忆。

数值类型

类型大小范围(有符号)范围(无符号)用途
TINYINT1 字节(-128,127)(0,255)小整数值
SMALLINT2 字节(-32 768,32 767)(0,65 535)大整数值
MEDIUMINT3 字节(-8 388 608,8 388 607)(0,16 777 215)大整数值
INT4 字节(-2 147 483 648,2 147 483 647)(0,4 294 967 295)大整数值
BIGINT8 字节(-9,223,372,036,854,775,808,9 223 372 036 854 775 807)(0,18 446 744 073 709 551 615)极大整数值
FLOAT4 字节(-3.402 823 466 E+38,-1.175 494 351 E-38),0,(1.175 494 351 E-38,3.402 823 466 351 E+38)0,(1.175 494 351 E-38,3.402 823 466 E+38)单精度 浮点数值
DOUBLE8 字节(-1.797 693 134 862 315 7 E+308,-2.225 073 858 507 201 4 E-308),0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308)双精度 浮点数值
DECIMAL对DECIMAL(M,D) ,如果M>D,为M+2否则为D+2依赖于M和D的值依赖于M和D的值小数值

日期和时间

注:timestamp类型有专有的自动更新特性。

类型大小 (字节)范围格式用途
DATE31000-01-01/9999-12-31YYYY-MM-DD日期值
TIME3‘-838:59:59’/‘838:59:59’HH:MM:SS时间值或持续时间
YEAR11901/2155YYYY年份值
DATETIME81000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值
TIMESTAMP41970-01-01 00:00:00/2038结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07YYYYMMDD HHMMSS混合日期和时间值,时间戳

字符串类型

类型大小用途
CHAR0-255字节定长字符串 比如手机号
VARCHAR0-65535 字节变长字符串
TINYBLOB0-255字节不超过 255 个字符的二进制字符串
TINYTEXT0-255字节短文本字符串
BLOB0-65 535字节二进制形式的长文本数据
TEXT0-65 535字节长文本数据
MEDIUMBLOB0-16 777 215字节二进制形式的中等长度文本数据
MEDIUMTEXT0-16 777 215字节中等长度文本数据
LONGBLOB0-4 294 967 295字节二进制形式的极大文本数据
LONGTEXT0-4 294 967 295字节极大文本数据

当我们了解了上面的内容后,我们可以开始学习创建第一个表。

<3>创建第一个表

创建表语法:

create table tbl_name(

字段1 数据类型,

字段2 数据类型,

字段3 数据类型…

);

创建第一个表(表名:sutudent):

字段字段类型
id整型
name字符形
height浮点(厘米形式,保留两位小数)
chinese整型
math整型
english整型
<1>代码一打:

​ create table student(id int,name varchar(20),height float(5,2),chinese int,math int ,english int);

美化一下:

create table student(

id int,

name varchar(20),

height float(5,2),

chinese int,

math int ,

english int

);

<2>查看是否创建成功

查询语句:show tables;

1554821271336

看到这个界面就说明列表创建OJBK了;

<3>表创建完了,看看表结构

查看表结构:desc student;

1554821382079

数据没毛病,继续。

再看看表格字符集:show create student;

1554821573644

<4>修改刚才创建的表

修改语句:

alter table tbl_name [add丨modify丨change丨drop丨rename to丨…]

(1)插入新列(插入字段geography,数据类型为整数)

alter table student add geography int;

(2)修改name列,使其长度为60;

alter table student modify name varchar(60);

(3)修改name 为 student_name;

alter table student change name student_name varchar(20);

(4)删除geography列

alter table student drop gepgraphy;

(5)修改字符集为gbk

alter table student charset=gbk;

(6)将表名改成student_info

alter table studnet rename to student_info;

(7)删除表格(先别删这个表格,记住这个操作就行))

drop table tb_name;

(8)删除数据库(也先别删除,记住这个操作就行)

drop database db_name;

to be continue

引言 欢迎来到PostgreSQL数据库从入门到精通。 在我们生涯的早期,我们开始理解开源软件的质量。不仅通常情况下它们可以自由使用,而且它们提供极高的质量。如果你发现问题,你可以检查源代码,理解程序工作过程。如果你找到一个错误,你可以自己修复或找别人帮你修复。我们从1978年开始试用开源软件,包括优秀的GNU工具,包括GNU Emacs和GCC。我们从1993年开始使用Linux并愉快地使用Linux内核和GNU工具建立了一个完整的,自由的计算环境,并且使用X Window系统提供了一个图形用户界面。PostgreSQL是一个采取相同的开源理念的优秀的数据库系统(更多关于开源和自由的信息,请访问http://www.opensource.org)。 数据库是非常有用的东西。很多人发现“桌面数据库”在办公室和家里的小应用程序中非常有用。很多网站是数据驱动的,很多内容都由网页服务器后面的数据库提供。随着数据库的普及,我们觉得有必要写一本书介绍数据库理论和实践。 我们写这本书整体介绍数据库,全面覆盖现代的关系数据库的能以及怎么高效使用它们。使用 PostgreSQL作为他的数据库的人都没有觉得PostgreSQL在哪方面有什么不足。它支持优秀的数据库设计,非常有弹性和扩展性,且运行在几乎你所能想到的计算机上,包括Linux,Unix,Windows,Mac OS X,AIX,Solaris以及HP-UX。 对了,免得你好奇,我告诉你PostgreSQL念做“post-gres-cue-el”(而不是“post-gray-ess-cue-el”)。 本书大致分为三部分。第一部分包括入门,包括数据库概述(它们是什么以及它们用来干什么),尤其是PostgreSQL的概述(怎样获得,安装和启动以及使用)。如果你同时运行了示例,到第5章完成的时候,你将建立起第一个可工作的数据库并且可以使用一些工具来做一些有用的事情,例如输入数据和执行查询。 本书的第二部分深刻地探索关系数据库的核心:SQL查询语言。通过示例程序和“做一个尝试”章节,你将学到数据库编程的很多方面。,从简单的数据插入和修改,强大的各类查询到通过存储过程和触发器扩展数据库功能。本章最重要的内容是数据库无关,所以你从本章获取的知识能够让你在使用其他数据库时如鱼得水。当然,所有的用来说明的示例资源是用PostgreSQL来作为示例数据库。关于PostgreSQL的管理和数据库设计的习惯用法也将在本章完整讨论。 本书的第三部分关注于在你的程序中发挥PostgreSQL的能力。本章涵盖了通过大量的编程语言连接到数据库、执行查询以及处理结果集。无论你是使用PHP或者Perl开发动态网页、用Java或者C#开发企业级应用程序或者用C写一个客户端程序,你将找到你想要的章节。 这是PostgreSQL从入门到精通的第二版;第一版在2001年发布。从那时起,每章的内容都根据8.0版本的PostgreSQL做了升级。我们在本书中有机会补充了新的一章
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值