資料庫:資料庫就是乙個檔案系統,提供了一套標準的sql運算元據.
**常見的資料庫:**
oracle:就是甲骨文(oracle)公司的產品.乙個收費的大型的資料庫.
db2:是ibm公司的產品.乙個收費的大型的資料庫.
sql server:微軟公司產品.乙個收費的中型的資料庫.(.net)
mysql:開源的資料庫.(免費的) 現在已經被oracle公司收購了.但是mysql6.0也開始收費了.
sybase:中型的資料庫.留下了乙個powerdeginer工具.(專業資料建模工具.)
sqlite:小型的嵌入式的資料庫(android系統)
dbms、sql、ddl、dml、dcl的全稱:
dbms:database management system (資料庫管理系統)sql語法:structured query language, 結構化查詢語言sql:structured query language (結構化查詢語言)
s:建立表/刪除表/修改表/備份表
資料完整性:not null/unique/default/check/pk
ddl:data definition language (資料定義語言)
dml:data manipulation language (資料操縱語言)
dbs:database system (資料庫系統)
dcl:data control language (資料控制語言)>
特點:*sql:每句結束寫乙個; sql語句不區分大小寫.* 非過程性語言 (過程性語言:一條語句的執行 需要依賴另一條語句.)
一條語句就有乙個執行的結果 。
分類:
ddl:資料定義語言
** 建立資料庫 表 檢視 刪除資料庫 表… create 、 drop 、alter…
dml(database manipulation language):資料操縱語言
* 針對的是表中的資料記錄: update(修改) insert delete…
dcl:資料控制語言
* 對執行的流程進行控制: if grant while 事務…
dql:資料查詢語言(官方分類)
* select :針對表 進行 查詢的.
資料庫:對資料庫進行crud的操作.
建立資料庫:
語法:* create database 資料庫名稱; (預設採用資料庫伺服器設定的字符集.)
* create database 資料庫名稱 character set 字符集;
* create database 資料庫名稱 character set 字符集 collate 字符集的校對規則;
檢視資料庫:
show databases; ---- 檢視資料庫伺服器中有那些資料庫.
show create database 資料庫名稱; ---- 檢視資料庫伺服器中某個資料庫的定義資訊.
刪除資料庫:
drop database 資料庫名稱;
修改資料庫:
語法:alter database 資料庫名稱 character set 字符集;
alter database 資料庫名稱 character set 字符集 collate 校對規則;
選擇資料庫:
語法:use 資料庫名;
檢視當前正在使用的資料庫:
語法:select database();
表:對錶進行crud的操作.
建立表:
語法:create table 表名(
欄位名 字段型別(長度),
欄位名 字段型別(長度)
);varchar、char
mysql中 char 和 varchar的區別?
* char型別 :代表的是乙個固定長度的字串.
* 如果定義的乙個 char(8) 存入資料的時候 存了乙個hello 剩餘的空間 用空格補全. 在hello後面放置3個空格補全.
* varchar型別:代表的是乙個可變長度的字串.
* 如果定義的乙個 varchar(8) 存入資料的時候 存了乙個hello 直接存了乙個hello 後面3個去掉了.
檢視一下表的結構:
語法: desc 表名;
顯示資料庫中所有的表: show tables;
* 為了保證資料的完整性:學習幾個約束.
單錶約束:(對單個表的約束.)
* 1.主鍵約束: 主鍵就是這一條記錄的唯一標識. primary key (主鍵) 設定了主鍵 (預設 唯一而且非空.)
* 2.唯一約束: 唯一約束.表中的記錄是唯一. unique
* 3.非空約束: 字段不能存入空值. not null
* 建立表的時候 可以給字段加約束:
create table 表名(
欄位名 字段型別(長度) 約束,
欄位名 字段型別(長度) 約束
);***** 如果這個主鍵是整形的. 可以將整形的主鍵 設定為自動增長.
create table employee2(
id int primary key auto_increment,
name varchar(20) unique not null,
gender varchar(5) not null,
birthday date not null,
entry_date date not null,
job varchar(20) not null,
salary double not null,
resume text not null
);***** 發現 有的型別 寫了長度 而有的型別沒寫長度.
字串型別 需要寫長度 數值型別 日期型別可以不寫長度.(他們有預設的長度) int預設值是11
* 修改表結構:
語法:修改表新增列: alter table 表名 add 列名 型別(長度) 約束;
修改表修改列的型別 長度以及約束: alter table 表名 modify 列名 型別(長度) 約束;
修改表刪除列: alter table 表名 drop 列名;
修改表名: rename table 舊表名 to 新錶名;
修改列名: alter table 表名 change 舊列名 新列名 型別(長度) 約束;
修改表的字符集: alter table 表名 character set utf8;
* 刪除表:
語法:drop table 表名;
資料庫基礎一
檢視當前使用者select user 在輸入sql語句的過程中 如果想要放棄本條語句 mysql set password password 123 建立使用者 create user create user alex 192.168.16.identified by 123 create user...
資料庫基礎一
一 資料庫在開發中的地位 python基礎是後端程式的開發,主要負責資料的處理 增刪改查 使用檔案儲存,利用python跟檔案互動的弊端 結果不好看,需要在控制台,使用終端控制 檔案的處理非常繁瑣 資料庫的優勢 通過一些語法規則來從資料庫種獲取想要的資料,或者想要做的操作 程式穩定性 資料一致性 併...
MySQL資料庫(一) 資料庫基礎
資料庫介紹 db database 資料庫 dbms database management system 資料庫管理系統 dba 資料庫管理員 database administrator 資料 描述事物的符號記錄稱為記錄 數字 文字 影象 聲音 表 不同的組織記錄在一起形成表 資料庫 資料的集合...