多动手!多动手!编程能力很重要
不懂多百度、谷歌。独立思考,多交流
一,后端基础SQL
1,常见数据库:
Oracle Database:甲骨文公司 (下载免费,维护收费)
SQL Server:微软 (收费)
MySQL:开源 (免费)
2,数据库语法
~create database aaa charset=utf8
#创建数据库
~user aaa
#使用aaa数据库
~create table bbb(username varchar(255) not null primary key,) charset=utf8;
#创建bbb表,内含有username列
alter table bbb add password varchar(255);
#增加列(字段)
desc bbb
#查看表bbb
alter table bbb drop column password;
#删除列(字段)
inser into bbb value('admin','123');
#插入数据
注意:字符串一定要用引号,数字可以不加即:
inser into bbb value('admin',123);
select * from bbb;
#查询bbb表多有内容
select * from bbb where username='admin';
#指定条件查询
updata bbb set username = 'root' where username='admin'
#修改数据
delect from bbb where username = 'root'
#删除数据
drop table bbb
#删除bbb表
3,总结:
~数据库就是将大量数据保存起来,通过计算机加工而成的可以高效访问的数据集合
~数据库的结构(库->表->字段(列)->记录(行))
~多练习增删改查库与表
注意:Sql语句结尾一定要有分号,对语法大小写不敏感
二,Sql高级查询
1, 基本查询
select * from 表;
字段查询
select 字段1,字段2 from 表;
条件查询
select * from 表 where 条件;
结果排序
select * from 表 order by 字段 (ASC/desc)
ASC升序,DESC降序
结果分页
select * from 表 LIMIT n,m
n从第几行开始,m表示第几条
2,连接查询:(感觉不是太重要,故命令行就不写了)
内连接:
a,b两个表。将a与b都有的记录输出
外连接:
左连接:
a,b两个表。将a全输出,b输出与a相同条件的记录
右连接:
a,b两个表。将b全输出,a输出与b相同条件的记录
!!3,联合查询:
~表中内容无重复
select * from aaa union select * from bbb
~表中内容重复
select * from aaa union all select * from bbb
注意:aaa与bbb表中的列数(字段数)必须相同
一般注入语句:
select * from aaa where username='admin' union select 1,2,3;
select * from aaa where username='admin' union select 1,password,3 from bbb;
4,常用函数
select database() 输出当前数据库
select user() 输出当前用户
select version() 输出当前数据库版本
select sleep(5) 等待5秒后回显(一般判断有没有Sql注入)
三,后端基础PHP
1,什么是php
开源脚本语言,动态语言的一种(asp,aspx,jsp)
将程序嵌入到HTMl文档中去执行(web容器认识的当php去解析,不认识的当html去解析)
php几乎支持所有主流数据库及其操作系统(跨平台)
2,php基本语法
<?php
echo 'hello world'; //语句以分号结尾,不可遗漏(单条语句可例外,不建议)
$a = 'hello'; //定义一个变量
define('a','hello'); //定义常量
echo md5('a'); //输出a的md5加密值。
//注意:
1,调用函数必须使用括号将参数包起来,如:md5('a')/md5("a")
2,+ - * / % 加减乘除 取余 ==仅判断内容,===判断内容与类型
3,
a = '5'(a='5asd'也可以!!) a==5为真 a===5为假
4,双引号识别变量,单引号原样输出
5,continue跳出本次循环,break终止循环
?>