最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

0720-MySQL(1)

2023-07-20 20:37 作者:GHWNM  | 我要投稿

1. 數(shù)據(jù)庫(kù)是什么?

數(shù)據(jù)庫(kù)是一種存儲(chǔ)數(shù)據(jù)的倉(cāng)庫(kù)

就像車(chē)庫(kù),水庫(kù),錢(qián)庫(kù)等.....存儲(chǔ)數(shù)據(jù)的倉(cāng)庫(kù),就叫數(shù)據(jù)庫(kù)

目前主流的數(shù)據(jù)庫(kù)有好幾種,比如Oracle,MySQL,SQL Server等等

有的數(shù)據(jù)庫(kù)是要收費(fèi)的,不會(huì)開(kāi)源,但是這次學(xué)的MySQL是開(kāi)源的,免費(fèi)的,以及跨平臺(tái)的

# SQL Server 是微軟開(kāi)發(fā)的,他既不開(kāi)源也不跨平臺(tái),垃

這次我們學(xué)的數(shù)據(jù)庫(kù)是關(guān)系型數(shù)據(jù)庫(kù),開(kāi)源免費(fèi)跨平臺(tái),與隔壁形成鮮明對(duì)比


數(shù)據(jù)庫(kù):DB(DataBase),用來(lái)管理數(shù)據(jù)的服務(wù)軟件:DBMS(DataBase Management System)

數(shù)據(jù)庫(kù)系統(tǒng):DBS(DataBase System),帶有數(shù)據(jù)庫(kù)并整合了數(shù)據(jù)庫(kù)管理軟件的系統(tǒng)

MySQL適用于中小型規(guī)模的,主流多種編程語(yǔ)言,以及Unix,Linux,Windows等多種操作語(yǔ)言

=utf

sql語(yǔ)句:

創(chuàng)建一個(gè)名字為PythonTest01,編碼格式為utf-8的數(shù)據(jù)庫(kù)

create database PythonTest01 charset=utf8;

顯示所有數(shù)據(jù)庫(kù)

show databases;

顯示創(chuàng)建數(shù)據(jù)庫(kù)的流程(我也看不懂,也不知道有啥用)

show create database PythonTest01; --這個(gè)不用加charset=utf8,不然就報(bào)錯(cuò)

刪除數(shù)據(jù)庫(kù)

drop database PythonTest01;

--如果你不創(chuàng)建數(shù)據(jù)庫(kù),是無(wú)法直接新建表的

查詢(xún)當(dāng)前使用的數(shù)據(jù)庫(kù)

select database();

使用PythonTest01數(shù)據(jù)庫(kù)

use PythonTest01;

查看當(dāng)前數(shù)據(jù)庫(kù)所有的表

show tables;

創(chuàng)建一個(gè)新數(shù)據(jù)表 名稱(chēng)為xxxxx 有兩個(gè)字段,第一個(gè)為int類(lèi)型的id,第二個(gè)為varchar(30長(zhǎng)度)的name

create table xxxxx (id int, name varcahr(30))

查看xxxxx數(shù)據(jù)表的結(jié)構(gòu)

desc xxxxx;

怎么對(duì)新創(chuàng)建的數(shù)據(jù)表字段約束?字段 類(lèi)型 約束(不限順序)

create table yyyyy(id int primary key not null auto_increment, name varchar(30));

這東西很長(zhǎng),所以可以換行

create table zzzzz(

id int primary key not null auto_increment,

name varchar(30)

);


創(chuàng)建一個(gè)students數(shù)據(jù)表

create table students(

? ? id int unsigned primary key not null auto_increment, -- unsigned是表示無(wú)符號(hào)類(lèi)型,也就是正數(shù)

? ? name varchar(30),

? ? age tinyint unsigned default 0, --默認(rèn)為0

? ? high decimal(5,2), --小數(shù)類(lèi)型(decimal),表示一共五位,有兩位小數(shù)

? ? gender enum("男","女","武裝直升機(jī)","我不到阿") default "我不到阿", --枚舉類(lèi)型,一共四種性別,默認(rèn)我不到啊(

? ? cls_id int unsigned --最后一個(gè)記住不要加逗號(hào)

);


插入一個(gè)數(shù)據(jù)

insert into students values(0, "老登", 18, 188.88, "男", 0);


在students里面添加新的字段[字段 類(lèi)型]

alter table students add birthday datetime;

重命名字段[原名 新名 類(lèi)型與約束]

alter table students change birthday birth datetime not null

修改字段:

alter table students modify birth date not null;

刪除字段:

alter table students drop birthday;

刪除表:

drop table students;


數(shù)據(jù)的增刪改查(surd)

增[自增的那位置填null 0 或者default都表示讓他自個(gè)填]:

insert into students values(0, "fw刀", 40, 170.65,"我不到阿", 1, "2016-1-1");

以及枚舉類(lèi)型,如果填別的會(huì)報(bào)錯(cuò),但是能寫(xiě)1,2,3,4,就是寫(xiě)他的下標(biāo),只不過(guò)跟列表不一樣的是這個(gè)從1開(kāi)始

還有就是如果你只想寫(xiě)一部分,可以在values前面寫(xiě)(),里面寫(xiě)你要塞的東西,但是順序必須一樣,而且規(guī)定了不能為null也沒(méi)有默認(rèn)值的你必須寫(xiě)

而且這樣寫(xiě)后面如果寫(xiě)多個(gè)括號(hào),可以一次插入多個(gè),比如:

insert into students (name, gender) values("fw刀","我不到阿") ("虎子","男");

(實(shí)際上,全部的也可以這樣,就是前面那個(gè)括號(hào)不寫(xiě),后面寫(xiě)完還能多幾個(gè)括號(hào)多寫(xiě)


改[update 表名]:

update students set gender=1;

這句意思是把全部都改成男(

如果把指定的改的話,后面加個(gè)where,后面接條件就行,他會(huì)把所有符合條件的都改掉

所以如果你要改指定人的話,最好用id,因?yàn)槟阋膊恢勒l(shuí)會(huì)重名


MySQL的查找語(yǔ)句和py差不多,比如我從student里面找

select * from student where age < 18 and gender = 2;

這里就是說(shuō)從student里把所有age小于18的和性別為2(女)的學(xué)生拿出來(lái)

如果* 改成 name就是只拿名字,加啥給啥,*就是全部

以及在py里表達(dá)等于是==,但是這里就是=就行了

and or 都一樣用

但是not的加在哪個(gè)前面就只對(duì)哪個(gè)生效

select name from student where not age <= 18 and gender = 1

查詢(xún)的時(shí)候 name改成 name as 姓名 可以把打印出來(lái)的結(jié)果改為as后面的東西,記得加逗號(hào)

而且你要查倆的話順序也跟著你的來(lái)

這里的意思就是把所有 年齡【不】小于等于18的學(xué)生 和 性別為1(男)的學(xué)生名字拿出來(lái)

相當(dāng)于 select name from student where (not age <= 18) and gender = 1;

# 是的,這里面也是括號(hào)可以提高優(yōu)先級(jí),跟py一樣

如果你想把所有 不 年齡小于18和性別為1 的名字拿出來(lái)的話,就這樣寫(xiě): not (age <= 18 and gender = 1);


還有個(gè)刪除(忘了他罷):

delete from students; 清 空 數(shù) 據(jù) 表

真正用的時(shí)候加條件

delete from students where name="fw刀"

以及你把這個(gè)刪了之后主鍵的id不是自增長(zhǎng)的嗎,他還是會(huì)繼續(xù)沿著之前的漲,但是你可以自己指定

但是主鍵不允許重復(fù),他要是接到之前已有的了,那就必掛無(wú)疑

這個(gè)是物理刪除


一般最好邏輯刪除,數(shù)據(jù)來(lái)之不易,不要?jiǎng)h掉!

alter table students add is_delete bit default 0;

添加個(gè)新字段,bit類(lèi)型,默認(rèn)值0,名字為is_delete(bit類(lèi)型二進(jìn)制,要么0要么1)

要是要?jiǎng)h除,就改成1


0720-MySQL(1)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
西贡区| 莱西市| 永丰县| 湘潭县| 郴州市| 南通市| 潞城市| 芮城县| 潍坊市| 阳信县| 通海县| 浦县| 张掖市| 平定县| 自贡市| 潜江市| 桑植县| 紫云| 九龙县| 石棉县| 府谷县| 乐亭县| 伊春市| 思南县| 平安县| 弋阳县| 万源市| 巴林右旗| 永城市| 永嘉县| 轮台县| 大宁县| 平顶山市| 福鼎市| 泗水县| 武穴市| 濉溪县| 天镇县| 乡宁县| 湄潭县| 芷江|