數(shù)據(jù)庫(kù)概述
1.為什么軟件測(cè)試工程師還需要學(xué)習(xí)數(shù)據(jù)庫(kù)以及開(kāi)發(fā)方面的知識(shí)?
1、測(cè)試工程師的目的是找出軟件的不足,并告訴開(kāi)發(fā)工程師,出現(xiàn)問(wèn)題的環(huán)境,操作步驟和輸入輸出數(shù)據(jù);優(yōu)秀的測(cè)試工程師,需要告訴開(kāi)發(fā)團(tuán)隊(duì),軟件的不足,這類不足會(huì)導(dǎo)致什么情況,如何避免,以及如何去修改(這是為什么高級(jí)軟件測(cè)試工程師比開(kāi)發(fā)工程師工資高的原因)。
2、測(cè)試工程師在測(cè)試軟件過(guò)程中,不僅僅需要在界面進(jìn)行操作,還需要檢查數(shù)據(jù)庫(kù)中的數(shù)據(jù)是否正確,從而在軟件出現(xiàn)問(wèn)題時(shí)候,能夠定位到問(wèn)題原因;
3、 學(xué)習(xí)數(shù)據(jù)庫(kù),掌握數(shù)據(jù)庫(kù)操作,增加面試成功機(jī)會(huì),可以提高工資。
2. 什么是數(shù)據(jù)庫(kù)
數(shù)據(jù)庫(kù)=多張表+各表之間的關(guān)系
3. 常見(jiàn)數(shù)據(jù)庫(kù)
1、Oracle?2、MySQL?3、Redis,4、SQLite,
二、SQL語(yǔ)句分類
1、?概念及作用
? ??????????database defination language 數(shù)據(jù)庫(kù)定義語(yǔ)言,用于定義數(shù)據(jù)庫(kù),用于定義表結(jié)構(gòu)
2、?表中字段基本數(shù)據(jù)類型
? MySQL支持多種類型,大致可以分為三類:數(shù)值、日期/時(shí)間和字符串(字符)類型
1、一個(gè)漢字占多少長(zhǎng)度與編碼有關(guān):
UTF-8:一個(gè)漢字=3個(gè)字節(jié)
GBK:一個(gè)漢字=2個(gè)字節(jié)
2、varchar(n) 表示 n 個(gè)字符,無(wú)論漢字和英文,Mysql 都能存入 n 個(gè)字符,僅是實(shí)際字節(jié)長(zhǎng)度有所區(qū)別
3. 數(shù)據(jù)庫(kù)語(yǔ)句操作
1、創(chuàng)建數(shù)據(jù)庫(kù)mysql
create database mysql
2、刪除數(shù)據(jù)庫(kù)
drop database mysql
3、選擇數(shù)據(jù)庫(kù)
use mysql
4、查看數(shù)據(jù)庫(kù)細(xì)節(jié)
show create database mysql
5、創(chuàng)建一個(gè)使用gbk字符集的數(shù)據(jù)庫(kù)
create database mydb2 character set gbk
4. 表結(jié)構(gòu)語(yǔ)句操作
1、選擇數(shù)據(jù)庫(kù)
use mysql
2、創(chuàng)建MySQL數(shù)據(jù)表需要以下信息:
表名、表字段名、定義每個(gè)表字段
1、創(chuàng)建表
create table? student (idint,namevarchar(20), sexvarchar(20),ageint,sal eryfloat(6,2),birthdaydate)
2、刪除表drop table student;
3、查看所有表show tables
4、查看表的創(chuàng)建細(xì)節(jié)show create table student;
展示表結(jié)構(gòu)desc student
5、在原有的學(xué)生基礎(chǔ)上添加address列
alter table student add addressvarchar(20)
6、在原有的學(xué)生基礎(chǔ)上刪除address列
alter table student drop address
5. 定義表的約束
create tablestudent(idintprimary key auto_increment,namevarchar(20)unique not null,sexvarchar(20),ageint,saleryfloat(6,2),birthday date)