MySQL學習(一 概述和表的基本操作)

2021-08-23 12:32:26 字數 3115 閱讀 2673

**:

資料庫(database:db):資料庫是按照資料結構啦組織、儲存和管理資料的倉庫--->資料庫其實就是磁碟中的檔案+管理系統

資料庫管理系統(database management system:dbms)是專門用於管理資料庫的計算機系統

軟體。資料庫管理系統能夠為資料庫提供資料的定義、建立、維護、查詢和統計等操作功能。並完成

對資料完整性、安全性進行控制的功能

1.在資料庫中,sql語句不區分大小寫

2.sql語句可以單行也可以多行寫

3.在sql語句中,關鍵字不能多行或縮寫

4.為了提高可讀性,關鍵字一般大寫,其他小寫

5.空格和縮排使程式易讀

6.sql不需要加分號,但是程式設計師在語句後加分號是乙個好習慣

我們說mysql是一種關係型資料庫,關係型資料庫最重要的概念就是表,表具有固定的列數和任意的行數,在數學上稱為「關係」二維表是同類實體的各種屬性的集合,每個實體對應於表中的一行,在關係中稱為元組,相當於通常的一條記錄,表中的列屬性,稱為field,相當於通常記錄中的乙個資料項,也叫做列、字段。

物件導向的類,類似於關係型資料庫中表的概念

orm思想:物件-關係對映類表

屬性列物件       

一行資料

資料庫物件:儲存、管理和使用資料的不同結構形式,如:表、檢視、儲存過程、函式、

觸發器、事件等。資料庫:儲存資料庫物件的容器

資料庫分為兩種:系統自帶的,和使用者自定義資料庫

常用資料庫命令:

show databases;                           檢視資料庫

use dname;                                  使用資料庫

show tables;                                  檢視表

create database dname               建立資料庫

drop     database    dname          刪除資料庫

mysql以乙個可選的顯示寬度指示器的形式對sql標準進行擴充套件,這樣當資料庫檢索乙個值時,可以把這個值加長到指定長度需要注意,使用乙個寬度指示器不會影響欄位的大小和它可以儲存的值的範圍,一般不用指定位寬

整數型別

int    

int/integer

bigint

long/long

int(2),在檢索時,長度會加長到2,不代表最大儲存99,僅僅是查詢時,使用兩個0佔位

小數型別        

float

float/float

double

double/double

money(5,2):整數和小數一共5位,其中小數佔兩位,最大999.99最小-999.99

字元型別    

char

定長字元型,0-255位元組

string/stringbuid

varchar

變長字元型

stringbuffer

text

純文字定長和變長:位元組數的占用問題char(5),varchar(5),存『1』,char五個位元組,varchar1個位元組

日期型別        

date

0000:00:00

date/calender

time

00:00:00

datetime

0000:00:00 00:00:00

timestamp

時間戳(1970-01-01 00:00:00差)

二進位制型別   (用的很少)     

binary\varbinary\tinyblob\blob\mediumblob\longblob 存放圖形、聲音、影響、二進位制物件 *:一般將二進位制的檔案儲存路徑儲存在資料中

bit       

boolean

建立表create table 表名(

colname1 type1 [約束]

colname2 type2,

colname3 type3

);ex:建立一張學生資訊表

create table t_student(

id int;

name varchar(20);

age int;

);為了避免使用到關鍵字,我們還可以將名字用` `圈起來

create table `t_student`(

`id` int;

`name` varchar(20);

`age` int;

);檢視表的結構

desc tname;

檢視表的詳細定義(檢視表的定義sql語句)

show create table tname;

刪除表drop table tname;

表的約束(針對某列而言)

1.非空約束:not null,不允許欄位的內容為空

2.設定列的預設值:default

3.唯一約束:unique,在該表中,該列的內容必須唯一

4.主鍵約束:primary key,非空且唯一

主鍵設計,唯一標識某一行資料

5.主鍵自增長:auto_increment,從1開始,步長為1

6.外來鍵約束:foreignkey,a表中的外來鍵列,a表中的外來鍵列的值必須參照於b表中的某一列(b表的主鍵)

*注意:主鍵的設計

1.單字段主鍵:單列作為主鍵,建議使用

復合主鍵:使用多列欄位當主鍵,不建議

2.主鍵的種類:

1).自然主鍵:使用有業務含義的列作為主鍵(不建議使用),例如身份證號碼

2).**主鍵:使用沒有業務含義的列作為主鍵

create table `t_student`(

`id` int primary key;                                      //主鍵,非空且唯一    

` name` varchar(20) unique not null;    //非空且值唯一

`age` int default 100;                                   //預設值100

);

WML學習(一) 概述和基本規則

概述 wml wireless markup language 無線標記語言 這種描述語言同我們常聽說的html語言同出一家,都屬於x ml語言這一大家族。html語言寫出的內容,我們可以在我們的pc機上用ie或是netscape等瀏覽器進行閱讀,而 wml語言寫出的檔案則是專門用來在手機等的一些無...

MySQL學習記錄(一) 概述

最近在看的mysql,現在把mysql的的的中的內容都總結出來,鞏固一下。主流資料庫廠商有oracle,microsoft,informix,sybase和ibm。開源的資料庫,主要有mysql,oracle和microsoft sql server這三個庫。我學習的是mysql資料庫,看的書是 s...

MYSQL學習筆記(一)概述

1.關係型資料庫的管理系統 比如當前有兩張表 學生資訊表 學號,姓名,性別,身份證號,學院,專業,入學時間 學生成績表 學號,科目,成績 我們可以根據乙個學生的學號查詢到他的某一學科的成績,即兩張表通過學號聯絡起來,這就是關係型資料庫管理系統。本階段主要學習的是 mysql 2.mysql的優勢 免...