mysql是什么?
現在是甲骨文公司下的一款關系型資料庫,
優點:免費,體量小,相對穩定,開源
關系型資料庫還有:sql-server
非關系型資料庫:redis
兩者的區別:關系型存盤位置是在磁盤,非關系型存盤位置在記憶體
資料庫的安裝:
1.首先要安裝mysql
注意:需要把 add to path 勾選上,默認埠: 3306 無必要不要更改,
安裝時盡量把賬號和密碼設定成自己能記住的不要太復雜
2.再安裝三方工具:navicat15
注意:本身需要收費需要自己去下載破解包
3.使用三方工具連接本機資料庫
步驟:輸入連接名--》如果是連接主機就不用改主機名--》埠也不用改--》輸入用戶名--》
輸入密碼--》點擊測驗連接--》點擊確定
4.資料庫:Database 可以簡稱 DB
Database system 簡稱 DBS 有電腦硬體和作業系統和資料庫管理系統和DBA構成
DBA:database Adminstrator 作用:維護資料庫及資料庫的相關開發,
資料庫管理系統:database management system 簡稱DBMS ,mysql,oracle都是資料庫管理系統也是關系型資料庫
上述關系中,在資料庫領域中有哪些關系?
(1) 直接關系:同一張表中,不同的兩張表有相同的欄位
(2) 間接關系:同一個資料庫中,不同的兩張表之間沒有直接關系,
但可以通過第三張表或其他表,建立聯系
我們可以一個連接比喻成一個很大的物流園,
在物流園中有很多的廠房,廠房中有很多的貨架,每個貨架上又有很多行,
在我們抽象的理解中,我們可以把物流園看成一個鏈接,把廠房看成一個資料庫,
把一個貨架看成一張表,把一個個貨物看成一條條資料,
在dos命令視窗常用的dos命令:
? 進入dos視窗:win+R
? 進入指定目錄:CD目錄名回傳上級目錄:CD ..
? 回到根目錄:CD /
? 查看當前目錄下的子目錄和檔案:DIR
? 寬屏查看: dir /w
? 分頁查看: dir /p
mysql作業目錄介紹
? 應用程式位置:Xampp\mysql\bin----mysql.exe
? mysql組態檔:windows平臺:my.ini linux平臺:my.inf
? mysqld.exe:mysql服務端程式
? 連接資料庫的語法:
? mysql -u root -p (根據提示輸入密碼即可,前提是將MySQL的bin目錄添加至環境變數)
? 如果沒有添加環境變數那么需要進入到bin目錄下
sql陳述句注意事項:
(1)撰寫SQL陳述句的時候所有的標點符號都需要英文
(2)sql陳述句在撰寫陳述句的時候需要小寫
(3)sql陳述句以分號結尾
(4)所有的單詞必須正確
(5)語法順序必須正確
簡單的的sql陳述句
(1)進入連接后需要查詢有哪些資料庫:
關鍵字:show
陳述句:show databases ;
(2)進入某個資料庫:
關鍵字: use
陳述句:use test;
(3)查看資料庫中有哪些表
show tables ;
(4)查看表結構:
關鍵字:desc
desc 表名;
describe 表名;
field:域,欄位或列的意思
type:型別的意思
Null:為空,什么都沒有,不確定內容的意思 '':空串
key:鍵,關鍵字的意思
default:默認,在資料庫中多指默認值
?
(5)查詢表中所有資料
關鍵字:select 查詢的意思 from 從哪里.....
語法;select 列名 from 表名;
在沒有規定具體要顯示那些列名的時候可以用*號代替查詢所有
如果規定了具體要顯示哪些列則必須使用對應的列名
如果我們需要顯示多個列,那么需要使用逗號隔開即可
Select ad_id,ad_name from esc_ad;
注意:在三方工具撰寫查藹陳述句時需要注意自己在哪個連接中在哪個資料庫下在寫sql陳述句,
我們既然要查詢資料那么就一定要精準,
(6)查看當前連接是哪個資料庫
select database();
(7)查看當前那個用戶連接的資料庫
select user();
(8)dos命令視窗下退出mysql程式
1.輸入quit;
2.輸入exit;
3.按ctrl + c
注意事項:不要直接輸入mysql后回車進入資料庫
資料庫的操作
(1)創建資料庫的命名規則;
1.資料庫名稱可以支持大小寫字母,特殊字符就是_,來組合
2.資料庫名稱一般以字母大頭
3.資料庫名稱建議在1-30個字符
4.資料庫名可以支持中文漢字,但是不推薦
5.創建資料庫的語法:
關鍵字:create database
create database 庫名;---創建資料庫當沒有指定字符集(以后在插入資料的時候遇到漢字可能會報錯)
create database 庫名 default character set utf8
collate utf8_genral+_ci;---創建資料庫時指定字符集utf8
create:創建
database:資料庫
default:默認
character:字符集
set:設定
collate:校對
ci:大小寫不敏感
cs:大小寫敏感
練習:創建資料庫 school , school1
create database school;
create database school1 default character set utf8 collate utf8_general_ci;
6.修改資料庫的字符集
關鍵字:alter database
語法:alter database 庫名 character set 字符集 collate 排序規則;
alter:修改
練習:修改school1使得字符集為utf16
alter database school1 character set utf16 collate utf16_general_ci;
alter database school1 character set utf8 collate utf8_general_ci;
7.洗掉資料庫
關鍵字:drop
語法:drop database 庫名;
練習:將school和school1洗掉
drop database school;
drop database school1;
create database student default character set utf8 collate utf8_general_ci;
create database teacher default character set utf8 collate utf8_general_ci;
drop database student;
drop database teacher;
資料庫中的表的操作
1.創建表
(1)表名稱的命名規則;
1.表名稱可以支持大小寫字母,特殊字符就是_,來組合
2.表名稱一般以字母大頭
3.資料庫名稱建議在1-30個字符
4.資料庫名稱可以支持中文漢字,但是不推薦
5.表名稱盡量含有業務意義
(2)創建表語法:
create table [庫名].表名(
列名1 資料型別1(長度),
列名2 資料型別2(長度),
列名3 資料型別3(長度)
);
create database school;
create table school.student(
id int(2),
name varchar(5),
age int(3)
);
create table school.teacher(
id int(2),
name varchar(5),
age int(3)
);
create table school.class(
id int(2),
name varchar(5),
age int(3)
);
2.修改表
關鍵字;alter table
(1)為一個表增加一個欄位
語法:alter table [庫名].表名 add [column] 列名 資料型別[長度];
add: 添加
column:列
練習:添加一個欄位在每張表中
alter table school.class add column sex varchar(2);
alter table school.student add column sex varchar(2);
alter table school.teacher add column salary float(7);
(2)在一張表中洗掉一列
語法:alter table [庫名].表名 drop[column] 列名;
alter table school.class drop sex;
alter table school.class add sex varchar(2);
alter table school.class add column card varchar(18);
關鍵字:drop 洗掉
3.洗掉表
語法:
drop table [庫名].表名;
練習:洗掉school下的class表;
drop table school.class;
復制表
? (1)只復制表結構
? 語法:create table [庫名].新表名 like 被復制的表名;
? create table school.student1 like school.student;
? create table school.teacher1 like school.teacher;
? (2)復制表結構加資料
? 語法:create table [庫名].新表名 as select * from 被復制的表名;
? create table school.a as select * from school.student;
? create table school.b select * from school.student;
? create table school.c as select * from school.student;
? create table school.d as select * from school.student;
?
插入資料:
? (1)單條插入資料
? insert into school.student values(1,"小白",20,"女");
(2)批量插入資料
? insert into school.student values
(2,"小白",20,"女"),
(3,"小白",20,"女"),
(4,"小白",20,"女");
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/498596.html
標籤:其他
