SQL编程:学习如何使用MySQL数据库结构
结构化查询语言(SQL)是一种特殊用途的编程语言,用于操作、存储和查询数据。SQL对称为关系数据库的结构中的数据进行操作。这些数据库结构通常由关系数据库管理系统(RDBMS)管理。几乎所有主要的关系数据库管理系统都使用了标准SQL,例如MySQL,它是一个开源的关系数据库管理系统。MySQL是大型和小型应用程序的理想选择,易于使用,可靠,快速;该软件还支持标准的SQL语法。
创建和使用数据库
包含业务客户的数据库将成为以下教程的示例。数据库应包含有关许多个人客户的信息,包括其名称,联系信息和其他业务相关数据。
让我们拿一个名叫“客户”的桌子,例如:
创建数据库
创建“客户”数据库涉及几个步骤:
您的数据的第一步是创建数据库。数据库中会有一个或多个表。对于这一步,你使用了创建数据库命令。以下代码将创建名为“客户”的数据库:
创建数据库客户;
创建表格
现在已经创建了数据库,下一步是创建一个表来表示我们的客户数据。对于这一步,创建表命令将在“Customers”数据库中创建一个表:
创建表客户(ID㈡CusNamevarchar(200),联系名称varchar(200), PostalCode㈡, 国家varchar(200));
前面的代码创建了一个名为“客户”的表,并用列填充它。通过声明列名称,随后,列数据类型,“ID”,“cusname”,“contactName”,“postalcode”和“country”现在是“客户”表中的字段。的非空字段属性可以分配给不应该包含空值的列。另外,一些列定义是字符数组,比如Varchar,需要一个说明符来说明数据的最大字符分配(列可以容纳的元素或字符)。
向数据库和表中添加数据
在创建了数据库、它的表和表的字段之后,下一步是向表中插入一条新记录。请记住,数据库就像一个文件夹,表就像一个文件,而字段(例如CusName)就像文件容器中属于一个客户的项目。当然,一个数据库表(虚拟文件)将包含一个客户实体可能拥有的许多数据项。这个实体或行称为记录。每条记录都有一个已声明的字段(列)。SQL提供了插入命令将记录插入表中。以下是一个例子插入命令及其使用方式:
插入客户('id','cusname','contactname','postalcode','country')价值(' 1 ',“弗朗西斯”、“姚明”、“223344”,“我们”);
的价值函数调用与插入命令。参数的顺序价值呼叫需要在同等地与字段列表同样订购插入调用(括号内的字段集)。后调用插入和价值函数,值值()调用被分配到插入()调用。在使用适当的相关参数调用这两个函数之后,“Customers”表包含一个新记录(行),其中每个字段(列)都有值。
数据库表是按顺序填充的,每次添加一条记录。在多次记录插入之后,一个表将作为客户实体的集合,它将存储关于这些客户实体的数据。
从数据库/表中检索数据
从数据库表中检索数据与将记录添加到表中一样简单。的选择命令用于检索目的。如果您只想检索列“ID,”“cusname,”和“国家/地区”。以下代码检索所需列:
选择ID,Cusname,ContactName从客户;
属性指定表的所有列选择命令检索/显示包含所有列数据的表。
如果要从“客户”表的所有列中检索数据,而且只想在降序中显示列,包括三行而不是所有五行,请使用限制命令。的限制命令将显示的数据限制为三行。的DESC条款配对命令命令将指定要显示的行降序排列。
以下代码段是用于显示/检索的限制和排序行的示例:
选择*从顾客ORDER BY DESC限制3;
删除表中的记录
如果要删除包含客户名称“stefen”和邮政编码“556677”的记录(行),则可以使用删除命令和在哪里条款。使用该命令和子句,您可以应用SQL查询如下:
删除从顾客在哪里cusname ='stefen'和postalcode ='556677';
前面的示例查询将从“Cusname”列中包含“STEFEN”的“客户”中的任何行中删除任何行,并在“CUSNAME”列中和“556677”中的“stefen”。然后将表数据更改为以下内容:
您也可以使用相同的删除多个行删除命令。
更新表格
假设您要从“客户”表中更新记录。你可以使用更新对这种需要的指挥。为了使用更新命令适当,您必须使用在哪里子句指定应更新的行。使用在哪里从句是必要的,因为省略了在哪里条款可能导致“客户”表中的不必要的变化。这种遗漏了在哪里子句可以更新数据库表的每条记录!
为了演示如何更新表,假设您希望通过将记录的CusName从“francis”更改为“mike”,将邮政编码从“223344”更改为“226070”来更新“Customers”表。另外,假设您只需要在包含“US”作为国家值的行中进行此更新。下面的查询示例将促进更新需求。
更新顾客集cusname ='mike',postalcode ='226070'在哪里国家='美国';
现在新表看起来像这样:
在执行上述三个命令之后,生成的表的CusName和PostalCode字段将分别具有“Mike”和“226070”。此外,只有记录中以“US”作为国家值的字段会被更新。
将列(字段)添加到表
要向现有表添加新列,可以使用ALTER TABLE命令。您可以将近无限数量的列添加到表中;您只需要指定添加的列的数据类型。在MySQL的情况下,如果要为出生日期添加列,并且您将数据类型作为“年”为“年”,则代码将如下所示:
ALTER TABLE顾客添加强加于人年;
新表将如下所示:
从表中删除一列
如果需要从表中删除列,则使用ALTER TABLE再次命令,但是用下降条款。以下示例将从“客户”表中删除“ContactName”列:
ALTER TABLE顾客丢弃栏联系名称;
此代码将从表中删除列“ContactName”,而不会影响任何其他列。
结论
这些都是基本SQL编程的示例,但还有许多其他命令和SQL函数可以用于编程(例如用于组合两个或更多表的行的连接命令)。Union命令用于将两个或多个SELECT语句的结果组合成单个结果集,而交叉运算符用于返回两个或多个SELECT语句的结果。像AVG()的函数用于返回数字列的平均值,并将“count”用于返回与任何指定标准匹配的行数。max()用于返回任何指定列的最大值,但min()用于返回任何指定列的最低值,并且“sum”用于返回任何数字列的完整总和。
SQL编程基于元组关系微积分,并使用查询来访问数据库中的信息。SQL使程序员能够创建和利用关系数据库结构。整个结构化查询语言提供了一种编程语言,支持对象导向的真实对象表示,该对象具有可以记录,存储和使用的属性的真实对象。
特色课程
最后更新2021年3月
使用Oracle SQL Developer,如Pro:了解将帮助您成为最高效的SQL开发人员的功能和技巧来自山顶开发学院的Carlos
探索课程