拓展:所知道的資料庫:關係型資料庫 oracle db2 sqlserver
mysql 都比不上上面這些。實際使用功能足夠、開源——意味著不收費 企業 運營成本考慮 )
目前: mysql資料庫
mysql.com: 正經的有oracle公司維護 和主權
mariadb:org: 是由martin維護的開源資料庫。
客戶端 訪問
mysql.exe -h127.0.0.1 -p3306 -uroot -p
資料庫 主機名 埠號 使用者名稱 密碼
簡寫:
mysql -u root 超級使用者 最高許可權 不需要密碼
mysql -u root -p 超級使用者 直接enter回車進入
原理結構:
server ==>database ==>table ==>row ==>col
伺服器 => 資料庫 => 表 => 行 => 列
show databases; #顯示伺服器上有哪些庫
quit;或者exit; #退出資料庫
use 庫名; #使用指定的庫
show tables; #顯示當前庫中的所有表
desc 表名; 檢視當前表的結構
基本語法:注意:
sql本身不區分大小寫, 習慣上 系統一些專用的 關鍵字 用大寫 自己定義的名稱 表的具體的內容 可以用小寫。
select * from 表名; # 檢視表中的所有資料
select id,name from 表名; #檢視表中的指定資料
sql的兩種執行方法:
互動式執行:輸入一行執行一行 僅作為臨時檢視資料
指令碼式執行:把整個資料庫中要執行的**全部寫在乙個.sql檔案, 一次性提交給伺服器 。
mysql -uroot < ***.sql 直接將.sql檔案拖進去, 回車
當前.sql檔案必須是 utf-8格式
.客戶端連線伺服器時設定編碼為 utf8 去掉-
資料庫儲存時也要設定 格式為 utf8
確保三者情況都一致 。
一、資料型別約束
1.數字型別
tinyint :微整數佔乙個位元組 取值範圍 -128-127 年齡
smallint:小整數佔2位元組 取值 -32768-32767
int: 整數 佔4位元組-2 147 483 648,2 147 483 647
bigint 極大整數佔8位元組 -2^64-2^64-1
float (m,d)單精度浮點數4位元組
double (m,d) 雙精度8
decimal (m,d) 定點小數不會產生四捨五入的精度丟失,m表示的是有效位數,
2.日期和時間
date: 日期型別只顯示 年月日『』yyyy-mm-dd」
time : 顯示 時間「hh:mm:ss」
year 顯示年份『』yyyy』』
datatime 年月日 時分秒「yyyy-mm-dd hh:mm:ss」
now() 表示當前系統時間值根據時間型別來定
ex: date型別 值: 2018-11-26
ex: datatime 值: 2018-11-26 16:19:36
每個時間型別有乙個有效值範圍和乙個」零」值,當指定不合法的mysql不能表示的值時使用」零」值。
3.字串型別
char(m) 定長字串執行效率高
用在資料值是固定長度的情況: 手機號 身份證號
varchar(m) 變長字串使用在資料值不固定長度的情況
binary、varbinary、blob、text、enum和set參考資料庫手冊
4.sql本身是沒有bool型別的資料 但是支援 boolean值
true –>1 false –>0
可以用bool string number表示
二、列約束
主鍵約束 — primary key
primary key 約束唯一標識資料庫表中的每條記錄。
主鍵必須包含唯一的值。
主鍵列不能包含 null 值。
每個表都應該有乙個主鍵,並且每個表只能有乙個主鍵。
補充:表中的所有資料 會按照主鍵約束的值的 從小到大的順序排列 顯示能夠加快查詢速度
唯一約束 –unique
宣告為唯一約束的列, 確保每列資料都是唯一性。但是可以允許出現多個 null值 乙個表中是允許有多個唯一性的約束 使用者名稱唯一 手機號唯一 郵箱唯一 。。。
1.sname varchar(15) unique; 唯一約束
2.unique(sname,birth) //表示 只有sname birth都相同的情況 才不允許插入
Mysql資料庫基本語法(一)
前記 正文 一 資料庫的操作 顯示所有的資料庫 show databases 建立資料庫 create database databasename 刪除資料庫 drop database databasename 選擇資料庫 use databasename 二 資料庫中表的字段的型別 數值型別 日...
MySQL資料庫 資料庫的一些基本概念
網路上關於資料庫的配置的文章有很多了,這裡就只記錄一些可能出現的問題 1 安裝完成資料庫之後,需要開啟3306的埠 2 mysql8.0修改密碼的語句和5.0版本的有點不一樣,在網上找的時候得看對了版本 3 遠端登入要記得關閉服務端的防火牆 4 workbench只是乙個視覺化的工具 1 伺服器端 ...
mysql資料庫一些基本的api操作
使用mysql介面運算元據庫 1包含mysql提供的標頭檔案mysql.h 2包含mysql的libmysql.lib和libmysql.dll動態庫 include之前一定要加上 include否則會產生如下錯誤 例子如下 include include 在工程屬性中設定好標頭檔案路徑,可以拷貝到...