一、SQL语句基础

1、数据库基本概念

相关术语

数据

数据是指对客观事件进行记录并可以鉴别的符号,是对客观事物的性质、状态以及相互关系等进行记载的物理符号或这些物理符号的组合。它是可识别的、抽象的符号。

数据库

数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。

常见的数据库有:Access、MSSQL、Oracle、 SQLITE、 MySQL等

数据库管理系统

数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。它可以支持多个应用程序和用户用不同的方法在同时或不同时刻去建立,修改和询问数据库。大部分DBMS提供数据定义语言DDL(Data Definition Language)和数据操作语言DML(Data Manipulation Language),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。

结构化查询语言

结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

数据库语言

SQL语言包含6个部分:

数据查询语言(DQL:Data Query Language):其语句,也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。
数据操作语言(DML:Data Manipulation Language):其语句包括动词INSERT、UPDATE和DELETE。它们分别用于添加、修改和删除。
事务控制语言(TCL):它的语句能确保被DML语句影响的表的所有行及时得以更新。包括COMMIT(提交)命令、SAVEPOINT(保存点)命令、ROLLBACK(回滚)命令。
数据控制语言(DCL):它的语句通过GRANT或REVOKE实现权限控制,确定单个用户和用户组对数据库对象的访问。某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。
数据定义语言(DDL):其语句包括动词CREATE,ALTER和DROP。在数据库中创建新表或修改、删除表(CREAT TABLE 或 DROP TABLE);为表加入索引等。
指针控制语言(CCL):它的语句,像DECLARE CURSOR,FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作。

数据库特性

静态网页:

html或者htm,是一种静态的页面格式,不需要服务器解析其中的脚本。由浏览器如(IE、Chrome等)解析。

不依赖数据库
灵活性差,制作、更新、维护麻烦
交互性交差,在功能方面有较大的限制
安全,不存在SQL注入漏洞

动态网页:

asp、aspx、php、jsp等,由相应的脚本引擎来解释执行,根据指令生成静态网页。

依赖数据库
灵活性好,维护简便
交互性好,功能强大
存在安全风险,可能存在SQL注入漏洞

2、数据库基础语句

  1. mysql -uroot -proot 登录数据库

  2. show databases; 查看有哪些数据库

  3. use mysql; 使用名为 mysql 的数据库

  4. show tables; 查看当前数据库中有哪些表

  5. select * from user; 查看user表中的所有数据

  6. desc mysql.user; 查看user表的表结构

  7. select host,user,password from mysql.user where user='root'; 按条件查询 只看 3 个字段 而且其中 user 字段值为 root 的内容

  8. select host,user,password from user order by 1; 排序查看

  9. create database test; 数据库建立

  10. create table test.userlist (id int,name char(15),tel int,primary key(id))建立一个名为 userlist 表格 字段 id 整型 name 字符型 电话 整型 主键值是学号

  11. insert into test.userlist (id,name,tel) value (1,'zc',12345678910);

  12. help alter

  13. alter table test.userlist add sex char(10) after name;

  14. alter table test.userlist modify tel char(15); 修改表结构

  15. Update test.userlist set tel='12341234567',sex='boy' where id=1;根据条件更新表内容

  16. delete from test.userlist where id=1; 删除数据库和表格

  17. drop table test.userlist; 删除表

  18. drop database test; 删除数据库

  19. select group_concat(table_name) from information_schema.tables where table_schema="pikachu";

  20. select table_name from information_schema.tables where table_schema='security';

  21. select column_name from information_schema.columns where table_name='users';

posted on 2023-06-15 20:39  zyl0106  阅读(20)  评论(0)    收藏  举报