- sql简述
- Structure Query Language(结构化查询语言)简称SQL。用来访问和操作数据库系统。SQL语句既可以查询数据库中的数据,也可以添加、更新和删除数据库中的数据,还可以对数据库进行管理和维护操作。不同的数据库,都支持SQL,这样,我们通过学习SQL这一种语言,就可以操作各种不同的数据库。
- 什么是SQL?简单地说,SQL就是访问和处理关系数据库的计算机标准语言。也就是说,无论用什么编程语言(Java、Python、C++……)编写程序,只要涉及到操作关系数据库,比如,一个电商网站需要把用户和商品信息存入数据库,或者一个手机游戏需要把用户的道具、通关信息存入数据库,都必须通过SQL来完成。
- sql的分类
- DDL(Data Definition Language) 数据定义语言,用来操作数据库、表、列等; 常用语句:CREATE、 ALTER、DROP
- DML(Data Manipulation Language) 数据操作语言,用来操作数据库中表里的数据;常用语句:INSERT、 UPDATE、 DELETE
- DCL(Data Control Language) 数据控制语言,用来操作访问权限和安全级别; 常用语句:GRANT、DENY
- DQL(Data Query Language) 数据查询语言,用来查询数据 常用语句:SELECT
- 关系模型
- 关系数据库是建立在关系模型上的。而关系模型本质上就是若干个存储数据的二维表,可以把它们看作很多Excel表
- 表的每一行称为记录(Record),记录是一个逻辑意义上的数据。
- 表的每一列称为字段(Column),同一个表的每一行记录都拥有相同的若干字段。
-
和Excel表有所不同的是,关系数据库的表和表之间需要建立“一对多”,“多对一”和“一对一”的关系,这样才能够按照应用程序的逻辑来组织和存储数据。
例如,一个班级表:
ID 名称 班主任 201 二年级一班 王老师 202 二年级二班 李老师 - 主键
- 对于关系表,有个很重要的约束,就是任意两条记录不能重复。不能重复不是指两条记录不完全相同,而是指能够通过某个字段唯一区分出不同的记录,这个字段被称为主键。
-
联合主键
- 关系数据库实际上还允许通过多个字段唯一标识记录,即两个或更多的字段都设置为主键,这种主键被称为联合主键。
- 外键
- 外键约束即FOREIGN KEY常用于多张表之间的约束。
- 在
students表中,通过class_id的字段,可以把数据与另一张表关联起来,这种列称为外键。
- mysql的安装
- MySQL是目前应用最广泛的开源关系数据库。MySQL最早是由瑞典的MySQL AB公司开发,该公司在2008年被SUN公司收购,紧接着,SUN公司在2009年被Oracle公司收购,所以MySQL最终就变成了Oracle旗下的产品。
-
要在Windows或Mac上安装MySQL,首先从MySQL官方网站下载最新的MySQL Community Server版本:
https://dev.mysql.com/downloads/mysql/
选择对应的操作系统版本,下载安装即可。在安装过程中,MySQL会自动创建一个
root用户,并提示输入root口令。要在Linux上安装MySQL,可以使用发行版的包管理器。例如,Debian和Ubuntu用户可以简单地通过命令
apt-get install mysql-server安装最新的MySQL版本。
-
mysql的登陆 n在命令串口中输入:mysql -uroot -proot 访问远程数据库:mysql -h192.168.1.1 -uroot -proot
-
数据库常用命令
-
显示数据库
show databases;
-
v 打开数据库n use +"数据库名“
-
创建数据库 create database hibernate_20120328 default character set utf 8
-
v 创建表
create table my(
id int auto_increment primary key,
name varchar(20) not null,
password varchar(20) not null,
age int not null
);
v 插入数据v insert into mytable ( name,password,age )values('admin','123',33);v MySql 修改表结构语句n ALTER TABLE :添加,修改,删除表的列,约束等表的定义。n 查看列: desc 表名 ;n 修改表名: alter table t_book rename to bbb ;n 添加列: alter table 表名 add column 列名 varchar(30);n 删除列: alter table 表名 drop column 列名 ;n 修改列名 MySQL : alter table bbb change nnnnn hh int ;n 修改列名 SQLServer : exec sp_rename't_student.name',' nn ','column';n 修改列名 Oracle : alter table bbb rename column nnnnn to hh int ;n 修改列属性: alter table t_book modify name varchar(22);v 查看:mysql的编码情况n show variables like '%character%';
-

被折叠的 条评论
为什么被折叠?



