SQL介紹、語句之增刪改查大全
數據庫概念
文件作為數據庫,數據格式千差萬別
將保存數據的地方統一起來
MySQL一款應用軟件
用來幫你操作文件的
只要是基於網絡通信,底層都是socket!!!
服務端
-socket通信
-收發消息
-解析命令(sql語句)
客戶端
-socket通信
-收發消息
-解析命令(sql語句)
DBA:
sql語句優化
RDBMS:數據庫管理系統
關系型數據庫
存儲數據的時候,對於數據有條件限制
數據與數據之間有關聯
通常都是以表格的方式存儲
關系型數據庫:
oracle, sqlite, db2, sql server,MySQL,access
非關系型數據庫
數據存儲方式 k,v鍵值對的形式
redis,mongodb,memcache
關系型數據庫和非關系型數據庫的區別
非關系型數據庫的優勢: 1、性能 NOSQL是基於鍵值對的,可以想象成表中的主鍵和值的對應關系,而且不需要經過SQL層的解析,所以性能非常高 2、可擴展性 同樣也是因為基於鍵值對,數據之間沒有耦合性,所以非常容易水平擴展。 3、使用場景:日誌、埋點、論壇、博客等
關系型數據庫的優勢: 1、 復雜查詢 可以用SQL語句方便的在一個表以及多個表之間做非常復雜的數據查詢 2、事務支持 使得對於安全性能很高的數據訪問要求得以實現。 3、使用場景:所有有邏輯關系的數據存儲
庫文件夾操作 增:create database db1 charset utf8; 查:show databases; 改:alter database db1 charset latin1; 刪除: drop database db1; 表文件操作 先切換到文件夾下:use db1 增:create table t1(id int,name char); 查:show tables
show create table 表名:
desc 表名describe 表名
改:alter table t1 modify name char(3); alter table t1 change name name1 char(2); 刪:drop table t1; 數據操作 增:insert into t1 values(1,‘egon1‘),(2,‘egon2‘),(3,‘egon3‘); 查:select * from t1; 改:update t1 set name=‘sb‘ where id=2; 刪:delete from t1 where id=1;
表修改操作:
1、修改字段名:
alter table 表名 rename column A to B
2、修改字段類型:
alter table 表名 alter column 字段名 type not null
3、修改字段默認值
alter table 表名 add default (0) for 字段名 with values
如果字段有默認值,則需要先刪除字段的約束,在添加新的默認值,
select c.name from sysconstraints a
inner join syscolumns b on a.colid=b.colid
inner join sysobjects c on a.constid=c.id
where a.id=object_id(‘表名‘)
and b.name=‘字段名‘
根據約束名稱刪除約束
alter table 表名 drop constraint 約束名
根據表名向字段中增加新的默認值
alter table 表名 add default (0) for 字段名 with values
4、增加字段:
alter table 表名 add 字段名 type not null default 0
5、刪除字段:
alter table 表名 drop column 字段名;
SQL介紹、語句之增刪改查大全