你好
創(chuàng)新互聯(lián)建站公司2013年成立,先為班戈等服務(wù)建站,班戈等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為班戈企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
修改表的數(shù)據(jù)一般使用update語句
具體的話參考相關(guān)SQL文檔吧
不是幾句話能說明白的
祝你好運(yùn)
望采納
插入數(shù)據(jù)
insert into 表名(字段) values(‘?dāng)?shù)據(jù)’);
insert into 表名1(name,age) select name,age from 表2; #表2 數(shù)據(jù)信息復(fù)制到表1
修改數(shù)據(jù)
update 表名 set '字段'='數(shù)據(jù)';??? #修改數(shù)據(jù)
delect from 表名 where 字段=值;?? #刪除數(shù)據(jù)
truncate table 表名;?????????? #清空所有數(shù)據(jù) 且無法恢復(fù)
DQL (數(shù)據(jù)查詢語言,用來查詢數(shù)據(jù))
select 要查詢字段 from 表名 [where 滿足條件];
[group by 分組依據(jù)]
[order by 排序依據(jù)]
[limit 限定輸出結(jié)果]
select * from 表名;???????? #查詢 表 所有數(shù)據(jù)
select 字段 字段 from 表名;????? #查詢指定字段數(shù)據(jù)
select st.name,st.age,th.name,th.age from st,th;??????????? #查詢一個(gè)或多個(gè)? 表中的數(shù)據(jù)
SELECT 字段名 FROM 表名 WHERE 條件1 OR 條件2 [...OR 條件n];
例:SELECT * FROM students WHERE age20 OR education!='大專'; #查詢年齡小于20或 者學(xué)歷不等于大專的學(xué)生信息
SELECT 字段名 FROM 表名 WHERE 條件1 AND 條件2 [...AND 條件n];
例:SELECT * FROM students WHERE age22 AND education='大專'; # 查詢年齡大于22 且學(xué)歷為大專的學(xué)生信息
select 字段 from 表名 where age in (12,17,23);????????????? #數(shù)據(jù)在指定 數(shù)據(jù) 里面
select 字段 from 表名 where age between 23 and 28;?????? #數(shù)據(jù)在23-28 之間
select * from 表名 order by 字段名;???????????????????? ?#排序,升序
select 字段 from 表名 order by desc;????????????????? ???? ?#?? 字段降序
select 字段1,字段2…… from 表名 group by? 分組依據(jù)字段;????????? #每個(gè)字段只顯示一條
例:SELECT id,sname,age,phone,place,GROUP_CONCAT(age,place) FROM students GROUP BY age,place; #查詢學(xué)生信息,根據(jù)age,place分組并顯示每一組的記 錄
select? distinct? 字段 from? 表名;????????????????????????? #去除結(jié)果重復(fù)行
例:SELECT DISTINCT age FROM students; # 查詢學(xué)生的年齡段情況
selcet 字段1,字段2,group_concat(分組依賴字段名) from 表名 group by 分組依賴字段名;??? #查詢每個(gè)組中記錄數(shù)量,顯示出來(使用關(guān)鍵字GROUP BY與GROUP_CONCAT()函數(shù)一起使用,可以將每個(gè)組中的記錄數(shù)量都顯 示出來)
例:selcet id,sname,age,phone,GROUP_CONCAT(age) FROM students GROUP BY age; # 查詢學(xué)生id,姓名,年齡,電話,根據(jù)age分組并顯示每一組的記錄
SELECT 字段名 FROM 表名 [其他條件] LIMIT int,int; 參數(shù)1是開始讀取的第一條記錄的 編號,參數(shù)2是要查詢記錄的個(gè)數(shù)
例:SELECT * FROM students ORDER BY age LIMIT 0,5; # 查詢學(xué)生信息,根據(jù)age 排序從第0位開始顯示,只顯示5條
select?字段名?from?表名where字段名?regexp '匹配方式';
(^匹配以特定字符或 字符串開頭的記錄,
$匹配以特定字符或 字符串結(jié)尾的記錄
[^字符集 合]匹配除“字符集合”以 外的任意一個(gè)字符
S1|S2|S3匹配S1 S2 S3中 的任意一個(gè)字符串
字符串{N }匹配字符串出現(xiàn)N次
字符串 {M,N}匹配字符串出現(xiàn)至 少M(fèi)次,最多N次)
聚合函數(shù)查詢
select?count(字段名)?from 表名;?????????? #對于除"*"以外的任何參數(shù),返回所選擇集合中非NULL值的行的數(shù)目;對于參數(shù)“*”,返回選擇集 合中所有行的數(shù)據(jù),包含NULL值的行
例:SELECT COUNT(*) FROM students;
select?sum(字段名) from 表名;????????? #表中某個(gè)字段取值的總和
select avg(字段名) from 表名;???????#表中某個(gè)字段取值的平均值
select max(字段名) from 表名;?????? ?#表中某個(gè)字段取值的最大值
select min(字段名) from 表名;??????? ?#表中某個(gè)字段取值的最小值
連接查詢
a.內(nèi)連接:列出數(shù)據(jù)表中與連接條件相匹配的數(shù)據(jù)行,組合成新記錄【只有滿足條件的記錄才出現(xiàn)在查詢結(jié) 果】 內(nèi)連接的最常見的例子是相等連接,也就是連接后的表中的某個(gè)字段與每個(gè)表中的都相同
select 字段名1,字段名2? from 表名1?inner join 表名2?where 連接條件;
例:select s.name,d.dname?from staff s inner join department d WHERE s.dpid = d.id; # 連接員工表的dpid字段和部門表的id字段,并查詢員工姓名和部門名稱
b.外連接:與內(nèi)連接不同,外連接是指使用OUTER JOIN關(guān)鍵字將兩個(gè)表連接起來。外連接生成的結(jié)果集不僅 包含符合連接條件的行數(shù)據(jù) ,而且還包含左表(左外連接時(shí)的表) 右表(右外連接時(shí)的表)或 兩邊連接表(全外連接時(shí)的表)中所有的數(shù)據(jù)行。
select?字段名稱?from 表名1 LEFT|RIGHT?join 表名2 on 表名1.字段名1 = 表名2.字段名2;
例:select?s.name,d.dname FROM staff s LEFT JOIN department d ON s.dpid = d.id; #連接員工表的dpid字段和部門表的id字段,并查詢員工姓名和部門名稱,如果右表中沒有對應(yīng)的 連接數(shù)據(jù),會自動(dòng)添加NULL值
例:SELECT s.name,d.dname FROM staff s RIGHT JOIN department d ON s.dpid = d.id; # 連接員工表的dpid字段和部門表的id字段,并查詢員工姓名和部門名稱,如果左表中沒有對應(yīng) 的連接數(shù)據(jù),會自動(dòng)添加NULL值
例:SELECT 字段名1,字段名2 FROM 表名1,表名2 WHERE 連接條件 AND 限制條件; 例:SELECT s.name,d.dname FROM staff s,department d WHERE s.dpid = d.id AND s.dpid1; # 查詢員工姓名和部門名稱,條件是員工表的dpid字段與部門表中的id字段相等,并且dpid大于1
合并查詢結(jié)果
select 字段名?from ?表名 UNION?select 字段名 ?from 表名;?? #關(guān)鍵字UNION是將所 有的查詢結(jié)果合并到一起,并且去除相同記錄
例:SELECT dpid FROM staff UNION SELECT id FROM department; # 查詢員工表dpid與部門表id,如果有重復(fù)數(shù)據(jù),只顯示一次
select?字段名?drom 表名 UNION ALL?select 字段名from表名;?? #關(guān)鍵字UNION ALL 則只是簡單地將結(jié)果合并到一 起
例:SELECT dpid FROM staff UNION ALL SELECT id FROM department; # 查詢員工表dpid與部門表id,全部顯示
mysql中修改數(shù)據(jù)庫目錄方法:
操作步驟:
1.檢查mysql數(shù)據(jù)庫存放目錄
mysql -u root -prootadmin
#進(jìn)入數(shù)據(jù)庫
show variables like '%dir%';
#查看sql存儲路徑
(查看datadir 那一行所指的路徑)
quit;
2.停止mysql服務(wù)
service mysqld stop
3.創(chuàng)建新的數(shù)據(jù)庫存放目錄
mkdir /data/mysql
4.移動(dòng)/復(fù)制之前存放數(shù)據(jù)庫目錄文件,到新的數(shù)據(jù)庫存放目錄位置
cp -R /usr/local/mysql/data/* /data/mysql/ #或mv /usr/local/mysql/data/* /data/mysql
5.修改mysql數(shù)據(jù)庫目錄權(quán)限以及配置文件
chown mysql:mysql -R /data/mysql/
vim /etc/my.cnf
datadir=/data/mysql (制定為新的數(shù)據(jù)存放目錄)
vim /etc/init.d/mysqld
datadir=/data/mysql
6.啟動(dòng)數(shù)據(jù)庫服務(wù)
service mysqld start
說明:根據(jù)以上的簡單6步操作,已經(jīng)成功的數(shù)據(jù)庫目錄更換路徑了。
mysql中怎么修改collation
【問題報(bào)錯(cuò)】
在數(shù)據(jù)庫插入數(shù)據(jù)時(shí),varchar 類型的字段插入中文數(shù)據(jù)時(shí)報(bào)錯(cuò)。
報(bào)錯(cuò)原文:
【原因分析】
通過 show full columns from user_bean;語句查看字段的collation屬性,發(fā)現(xiàn)字段的collation屬性值是 latin1_swedish_ci ,說明字段默認(rèn)為英語。未對漢語進(jìn)行設(shè)置,所以當(dāng)輸入漢語時(shí),mysql會報(bào)錯(cuò)為“字符串的值不正確”。
【解決方法】
1、編輯mysql的配置文件 /etc/my.cnf,vi /etc/my.cnf
在 [mysqld] 下面加入兩行補(bǔ)充
2、重啟Mysql服務(wù) systemctl restart mysqld
向數(shù)據(jù)庫插入含中文的數(shù)據(jù),成功!
注意:上面步驟可以解決以后創(chuàng)建表時(shí)字段的collation屬性的問題,但前面已經(jīng)創(chuàng)建的表字段的collation屬性值并不會發(fā)生變化。
如果要改變之前已經(jīng)創(chuàng)建好的表,怎么辦?
方法1:對原來的表進(jìn)行修改,可以通過類似語句
alter table user_bean change address address varchar(255) character set utf8 collate utf8_general_ci not null;
方法2:刪除原來的表,重新再建。
【命令總結(jié)】
對mysql數(shù)據(jù)表中的某個(gè)字段的所有數(shù)據(jù)修改,可以使用update語句,語法是:
update table_name set column = value[, colunm = value...] [where condition];
[ ]中的部分表示可以有也可以沒有。
例如:
update students set stu_name = "zhangsan", stu_gender = "m" where stu_id = 5;
擴(kuò)展資料:
SQL修改字段屬性總結(jié):
1、修改表中字段類型 可以修改列的類型,是否為空)
Alter table [表名] alter column [列名] 類型
2、向表中添加字段
Alter table [表名] add [列名] 類型
3、刪除字段
Alter table [表名] drop column [列名]
4、添加主鍵
Alter table [表名] add constraint [ 約束名] primary key( [列名])
5、添加唯一約束
Alter table [表名] add constraint [ 約束名] unique([列名])
6、添加表中某列的默認(rèn)值
Alter table [表名] add constraint [約束名] default(默認(rèn)值) for [列名]
修改參數(shù)分兩類,一類是修改數(shù)據(jù)啟動(dòng)類型參數(shù)
直接進(jìn)入/etc/my.cnf中可修改啟動(dòng)的系統(tǒng)參數(shù)。
另外一種是修改運(yùn)行參數(shù),則可直接進(jìn)入mysql進(jìn)行修改,或者直接試用連接工具進(jìn)行修改。
一、variable
#查看mysql參數(shù)
#mysql -uroot -proot -e "show variables;"|grep logbin
二、status
#查看mysql狀態(tài)
#mysql -uroot -proot -e "show status;"
#全局狀態(tài)
#mysql -uroot -proot -e "show global status;"
三、processlist
#查看100條正在執(zhí)行的sql語句
mysql show processlist;
#查看全部正在執(zhí)行的sql語句
mysql show full processlist;
四、set 參數(shù)
#不重啟直接生效,重啟后失效。若需要重啟后依然生效,需要更改配置文件my.cnf
set global key_buffer_size = 1024*1024*2