數據庫的五個概念
數據庫服務器
數據庫MySQL,數據庫
數據表
數據字段
mysql優點?數據行
那么這里下面既是對上面幾個概念進行基本的日常操作。
數據庫引擎使用
mysql使用教程、這里僅僅只介紹常用的兩種引擎,而InnoDB是從MySQL 5.6.版本以后InnoDB就是作為默認啟動使用的存儲引擎。
(1) InnoDB
a,支持ACID,簡單地說就是支持事務完整性、一致性;
mysql實踐、b,支持行鎖,以及類似ORACLE的一致性讀,多用戶并發;
c,獨有的聚集索引主鍵設計方式,可大幅提升并發讀寫性能;
d,支持外鍵;
mysql 索引、e,支持崩潰數據自修復;
InnoDB設計目標是處理大容量數據庫系統,它的CPU利用率是其它基于磁盤的關系數據庫引擎所不能比的。
它是一個可靠地事務處理引擎,不支持全文本搜索
mysql使用?(2) MyISAM
a,不支持 每次查詢具有原子性
b,只支持表所
c,強調的是性能,其執行數 度比InnoDB類型更快,但是不提供事務支持
d,如果執行大量的SELECT,MyISAM是更好的選擇
e,缺點:就是不能在表損壞后恢復數據。(是不能主動恢復)
既然知道了這倆種引擎的優缺點,那么寫一下幾個常用的API操作。
show engines; --顯示所有可用的引擎
show table status from myDB; --查看myDB數據庫下的所有表使用的引擎
show create table 表名; --指定查看表名的所有段名以及引擎
create table 表名(id int primary key, name varchar(50)) engine=MyISAM; --建表的時候指定引擎
alter table 表名 Engine= MyISAM; --建完表后修改引擎為MyISAM
當然,也可以通過修改配置文件my.ini在[mysqld]最后添加為上default-storage-engine=InnoDB,重啟服務,數據庫默認的引擎修改為InnoDB。
數據庫操作
>net start mysql //啟動數據庫和停止net stop mysql
>mysql -u root -p //默認登陸本機(-h是主機地址)
>SELECT USER(); //顯示當前用戶
>create database 數據庫名; //創建數據庫
>SELECT DATABASE(); //顯示當前使用數據庫
>SHOW DATABASES //顯示所有數據庫列表
>USE DATABASE 庫名; //使用該數據庫
>DROP DATABASE 庫名 //刪除數據庫
>CMD終端:mysqladmin -u用戶名 -p舊密碼 password 新密碼 //修改密碼
>mysql語句:set password for 用戶名@localhost = password('新密碼');
數據表操作
>SHOW TABLES; //列出庫中所有的表
>DESCRIBE table1; //查看表結構
>show columns from 數據表; //顯示表的所有段名以及類型
>CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1)); //增加數據表和字段名
>DROP TABLE 表名; //刪除表
>alter table stu rename as students; //將舊表明stu改為新表明students。
表字段操作
添加字段
語法:ALTER TABLE 表名 ADD COLUMN 字段名 字段類型 DEFAULT NULL;
示例:ALTER TABLE dictionary ADD COLUMN calss VARCHAR(10) DEFAULT NULL;
-- dictionary是表名
修改字段名稱
語法:ALTER TABLE 表名 CHANGE 舊字段名 新字段名 新字段類型 DEFAULT NULL;
示例:ALTER TABLE dictionary CHANGE calss class VARCHAR(10) DEFAULT NULL;
刪除字段
語法:ALTER TABLE 表名 DROP COLUMN 字段名
示例:ALTER TABLE dictionary DROP COLUMN calss;
批量增加字段
bagin; //事務開始
alter table em_day_data add f_day_house7 int(11);
alter table em_day_data add f_day_house8 int(11);
alter table em_day_data add f_day_house9 int(11);
alter table em_day_data add f_day_house10 int(11);
commit; //提交事務,事務結束
數據增刪改查
MySQL語句忽略大小寫的。每張數據表只能存在一個主鍵。
Tip: 由于數據表的首個字段名(就是主鍵,假如是id)是不能重復命名的(建議使用id,因為每張表只能存在一個主鍵),所以建議刪除的時候使用(where id=1)鍵名來定位匹配更好。
查
var sql = 'SELECT * FROM websites'; --查詢整個websites表所有數據
var sql = 'SELECT name FROM websites'; --查詢整個websites表name字段數據
增
-- websites表必須存在(Id,name,url,alexa,country)這些字段名
var addSql = 'INSERT INTO websites(Id,name,url,alexa,country) VALUES(2,"taobao","http://wwww.taobao.com","3","CN")';
insert into table1(id,name,url,country) values(6,"lucas","https://wwww.lucas.com","CN");
改
-- where是定位到上面的增加數據(可以使用任何"字段名=值"來匹配),并更改倆個數據
var modSql = 'UPDATE websites SET name = "facebook",url = "http://www.facebook.com" WHERE Id = 2';
var modSql = 'update websites SET alexa="12" where name="taobao"'; --定位name字段為taobao并更新了alexa字段的值
刪
var delSql = 'DELETE FROM websites where id=2'; -- 刪除id=2的數據(當然)
-- 刪除name=lucas的數據(建議使用id,因為每張表只能存在一個主鍵),因為他會將表中所有name=lucas的值全部刪除
delete from websites where name="lucas";
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态