零:SQL简介
SQL 是什么?
SQL 指结构化查询语言,全称是 Structured Query Language。
SQL 的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。
SQL 在1986年成为 ANSI的一项标准,在 1987 年成为国际标准化组织(ISO)标准。
SQL 能做什么?
SQL 面向数据库执行查询
SQL 可从数据库取回数据
SQL 可在数据库中插入新的记录
SQL 可更新数据库中的数据
SQL 可从数据库删除记录
SQL 可创建新数据库
SQL 可在数据库中创建新表
SQL 可在数据库中创建存储过程
SQL 可在数据库中创建视图
SQL 可以设置表、存储过程和视图的权限
虽然 SQL 是一门 ANSI(American National Standards Institute 美国国家标准化组织)标准的计算机语言,但是仍然存在着多种不同版本的 SQL 语言。然而,为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的命令(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。除了 SQL 标准之外,大部分 SQL 数据库程序都拥有它们自己的专有扩展。
这篇博客以mysql为例。
一:连接MySQL
语法如下:
mysql -h主机地址 -u用户名 -p用户密码
连接本机mysql的具体操作如下:首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p(如果已经设置了环境变量的话可以直接DOS窗口键入命令),回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>。
连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:
mysql -h110.110.110.110 -uroot -pabcd123
注: u与root可以不用加空格,其它也一样)
二:退出mysql命令
直接 exit 或 quit
三:修改密码
mysql修改密码有三种方式
方法一:使用 SET PASSWORD 命令
使用 SET PASSWORD 修改密码命令格式为:
set password for username@localhost = password('newpwd');
方法二:使用mysqladmin修改密码
该方法修改密码的命令格式为:
mysqladmin -u用户名 -p旧密码 password 新密码
方法三:UPDATE直接编辑user表
步骤 1):连接权限数据库。
use mysql;
步骤 2):设置新密码。
update user set password=password('newpassword') where user='root';
步骤 3):命令刷新权限。
flush privileges;
步骤 4):退出 MySQL 重新登录,此时密码已经修改为刚才输入的新密码了。
quit
四:增加新用户
语法格式:
grant select on 数据库.* to 用户名@登录主机 identified by \"密码\"
例:增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:
grant select,insert,update,
delete on *.* to test2@localhost identified by \"abc\";
如果不想test2有密码,可以再打一个命令将密码消掉。
grant select,insert,update,delete on mydb
.* to test2@localhost identified by \"\";
五:MySQL常用操作
(1). 创建数据库
create database 数据库名;
(2). 选择数据库
选择数据库后,进行数据库操作时就可以不用再指明是对哪个数据库操作。
use 数据库名;
(3). 删除数据库
删除前不提醒:
drop database 数据库名;
删除前有提醒:
mysqladmin drop 数据库名;
(4). 显示库
show databases;
(5). 显示表
show tables;
(6). 表的详细描述
describe 表名;
(7). SELECT 语句
选择的基本语法:
SELECT column_name,column_name
FROM table_name;
选取所有表中所有内容
SELECT * FROM table_name;
(8). 显示当前mysql版本
select version();
(9). 显示当前日期
select current_date;
(10). AND & OR 运算符
AND & OR 运算符用于基于一个以上的条件对记录进行过滤。
如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录。
(11). ORDER BY 关键字
ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。ORDER BY 关键字默认按照升序对记录进行排序。如果需要按照降序对记录进行排序,则可以使用 DESC 关键字。
语法:
SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;
(12). INSERT INTO语句
INSERT INTO 语句用于向表中插入新记录。
INSERT INTO 语句可以有两种编写形式。
第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:
INSERT INTO table_name
VALUES (value1,value2,value3,...);
第二种形式需要指定列名及被插入的值:
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
(13). UPDATE 语句
UPDATE 语句用于更新表中已存在的记录。
语法如下:
UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;
一定要注意 SQL UPDATE 语句中的 WHERE 子句。WHERE 子句规定哪条记录或者哪些记录需要更新。如果省略了 WHERE 子句,所有的记录都将被更新。
(14). DELETE 语句
DELETE 语句用于删除表中的行。
语法如下:
DELETE FROM table_name
WHERE some_column=some_value;
要注意 SQL DELETE 语句中的 WHERE 子句!WHERE 子句规定哪条记录或者哪些记录需要删除。如果省略了 WHERE 子句,所有的记录都将被删除!
更多内容大家可以前往我的个人博客浏览:eyes++的个人空间