create database test_db;use test_db;create table student(id int auto_increment not null,name varchar(20),class varchar(20),primary key(id)); create table course(id int auto_increment not null,name varchar(20),primary key(id)); create table takes(id int auto_increment not null,takes_student int,takes_course int,score int(2),primary key(id));alter table takes add constraint fk_takes_student foreign key (takes_student) references student (id) on delete set null on update cascade;alter table takes add constraint fk_takes_course foreign key (takes_course) references course (id) on delete set null on update cascade;
專注于為中小企業提供網站設計、成都網站設計服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業澄海免費做網站提供優質的服務。我們立足成都,凝聚了一批互聯網行業人才,有力地推動了1000多家企業的穩健成長,幫助中小企業通過網站建設實現規模擴充和轉變。
備考全國計算機二級MySQL考試的小伙伴們,復習的都怎么樣了呢?環球青藤小編發布了2020年計算機二級MySQL考試每日一練供大家參考復習,小伙伴們快來做一做,測試一下自己吧!了解更多全國計算機二級MySQL備考資料敬請關注環球青藤計算機二級頻道。
2020年計算機二級MySQL考試每日一練(6月17日)
1.若有定義語句:int a[3][6];,按在內存中的存放順序,a數組的第10個元素是( )。
A.a[o][4]
B.a[1][3]
C.a[o][3]
D.a[1][4]
答案:B
2.有以下程序
#include
void fun(char**p)
{++p;printf("%s",*p);}
main()
{char*a[]={"Morning","Afternoon","Evening"," Night");
fun(a);
}
程序的運行結果是( )。
A.Afternoon
B.fternoon
C.Morning
D.orning
答案:A
3.若有定義語句:int a[2][3],*p[3];,則以下語句中正確的是( )。
A.p=a;
B.p[0]=a;
C.p[o]=a[1][2];
D.p[1]=a;
答案:B
4.有以下程序
#include
void fun(int*a,int n)/*fun函數的功能是將a所指數組元素從大到小排序*/
{int t,i,j;
for(i=0;in-1;j++) p=""/n-1;j++)
for(j=i+l;jn;j++) p=""/n;j++)
if(a[i]/a[j]){t=a[i];a[i]=a[j];a[j]=t;}
}
main()
{int c[10]={1,2,3,4,5,6,7,8,9,0),i;
fun(c+4,6);
for(i=0;i10;i++)printf("%d,",c[i]);
printf("n");
}
程序運行的結果是( )。
A.1,2,3,4,5,6,7,8,9,0,
B.0,9,8,7,6,5,1,2,3,4,
C.0,9,8,7,6,5,4,3,2,1,
D.1,2,3,4,9,8,7,6,5,0,
答案:D
5.有以下程序
#include
int fun(char s[])
{int n=0;
while(*s='9'*s='0'){n=10*n+*s-'o';s++;)
return(n);
}
main()
{char s[10]={'6','1','*','4','*','9','*',' 0','*');
printf("%d",fun(s));
}
程序運行的結果是( )。
A.9
B.61490
C.61
D.5
答案:C
更多2020年計算機二級MySQL考試每日一練試題,請繼續關注環球青藤計算機二級頻道。需要及時了解考試動態的小伙伴可“ 免費預約短信提醒”屆時環球青藤會及時為大家推送2020年計算機二級考試相關信息提醒。環球青藤友情提示:對于想要參加計算機二級考試的小伙伴們,環球青藤特地為您準備了計算機二級考試資料,如有需要請點擊文章下方“免費下載計算機二級考試資料”下載學習。
今天主要復習了MySQL的一些簡單語句,可總結:
mysql 統計 表的數量:SELECT COUNT(1) FROM information_schema.TABLES WHERE TABLE_SCHEMA = '你的數據庫';
有時候需要查詢MySQL數據庫中各個表大小,該如何操作呢?
MySQL中有一個名為 information_schema 的數據庫,在該庫中有一個 TABLES 表,這個表主要字段分別是:
TABLE_SCHEMA : 數據庫名
TABLE_NAME:表名
ENGINE:所使用的存儲引擎
TABLES_ROWS:記錄數
DATA_LENGTH:數據大小
INDEX_LENGTH:索引大小
use information_schema;
SELECT
TABLE_NAME,
(DATA_LENGTH/1024/1024) as DataM ,
(INDEX_LENGTH/1024/1024) as IndexM,
((DATA_LENGTH+INDEX_LENGTH)/1024/1024) as AllM,
TABLE_ROWS
FROM
TABLES
WHERE
TABLE_SCHEMA = '你的數據庫';
MySQL的一些基礎語句:
行是記錄 列是字段
創建庫
CREATE DATABASE [IF NOT EXISTS] 數據庫名 [參數[ 參數] [ 參數]...];
參數:
CHARACTER SET 碼表名
COLLATE 校對規則名, 詳見文檔10.10.1
顯示庫
SHOW DATABASES;
顯示數據庫創建語句
SHOW CREATE DATABASE 數據庫名;
修改庫
ALTER DATABASE 數據庫名[ 參數[ 參數][ 參數]...];
注意: 不能改數據庫的名字
刪除庫
DROP DATABASE [IF EXISTS] 數據庫名;
操作表之前使用需要先確定使用哪個數據庫
USE 數據庫名
創建表
CREATE TABLE 表名(列名 類型[,列名 類型][,列名 類型]...);
查看所有表
SHOW TABLES;
查看表的創建語句
SHOW CREATE TABLE 表名;
顯示表結構
DESC 表名;
修改表名
RENAME TABLE 原表名 TO 新表名;
修改字符集
ALTER TABLE 表名 CHARACTER SET 字符集名;
刪除表
DROP TABLE 表名;
追加列
ALTER TABLE 表名 ADD 列名 類型[,列名 類型][,列名 類型]...;
修改列類型
ALTER TABLE 表名 MODIFY 列名 類型[,列名 類型][,列名 類型]...;
修改列
ALTER TABLE 表名 CHANGE COLUMN 原列名 新列名 類型;
刪除列
ALTER TABLE 表名 DROP 列名;
插入語法:
INSERT INTO 表名[(列名[,列名]...)] VALUES(值[,值]...);
注意事項:
插入值類型必須與對應列的數據類型一致
數據不能超出長度
插入值得為之必須與列名順序一致
字符和日期數據要放在單引號中
插入空值使用null
如果不指定插入哪一列, 就是插入所有列
中文數據
由于默認碼表是utf8, 而cmd.exe的碼表是gbk, 在插入中文數據的時候會報錯, 所以我們需要修改客戶端碼表
先查看系統變量: SHOW VARIABLES LIKE 'character%';
修改客戶端碼表: SET character_set_client=gbk;
修改輸出數據的碼表: SET character_set_results=gbk;
修改語法
UPDATE 表名 SET 列名=值[,列名=值]...[WHERE 條件語句];
注意事項
WHERE子句選擇滿足條件的行進行更新, 如果不寫, 則更新所有行
刪除語法
DELETE FROM 表名 [where 條件語句]
注意事項
如果不加where子句, 將刪除表中所有記錄
delete只能用作刪除行, 不能刪除某一列的值, 需要用update
在delete和update的時候需要注意表與表之間的關聯關系
刪除表中所有數據可以使用: TRANCATE 表名, 這種方式會刪除舊表重新創建, 在數據較多的時候使用
備份數據庫
輸入quit退出mysql, 在cmd.exe中輸入:
mysqldump –u用戶名 –p密碼 數據庫名 文件名
恢復數據庫
進入mysql.exe之后, 使用數據庫之后
source 文件名
操作數據(查詢)
DISTINCT語法
SELECT [DISTINCT] 列名[, 列名]... FROM 表名
注意事項
*可以替代列名, 表示所有列, 但是通常我們為了提高代碼的可讀性, 不使用*
DISTINCT為過濾重復記錄
如果DISTINCT后面跟多列, 是過濾掉多列合并之后的重復
列名表達式——語法
SELECT 列名|表達式[,列名|表達式]... FROM 表名
注意事項
表達式只是顯示時起作用, 不會改變數據庫中的值
AS——
SELECT 列名 AS 別名 FROM 表名
注意事項
起別名時AS可以省略
不會改變數據庫中的值
WHERE——
語法
SELECT 列名 FROM 表名 [WHERE 條件語句]
WHERE子句中的運算符
比較運算符
, , =, =, =,
注意不等于和Java中不同, 是
BETWEEN ... AND ...
某一區間內的值, 從 ... 到 ...
IN(列表)
在列表之中, 例: in(1,2,3) 代表1或2或3
LIKE(表達式)
模糊查詢, %代表多個字符, _代表單個字符
IS NULL
判斷是否為NULL
邏輯運算符
AND
與, 兩邊都為TRUE結果為TRUE
OR ||
或, 一邊為TRUE結果就為TRUE
NOT !
非, 將表達式結果取反
ORDER BY——
語法
SELECT 列名 FROM 表名 ORDER BY 列名 ASC|DESC;
注意事項
ORDER BY 指定排序的列名可以是表中的列名, 也可以是SELECT語句后面起的別名
ASC為升序, DESC為降序
ORDER BY應在查詢語句的結尾
COUNT函數——
語法
SELECT COUNT(*)|COUNT(列名) from 表名 [WHERE 條件語句]
注意事項
COUNT(列名)的方式是統計指定列中有多少條記錄, 不包括值為NULL的
COUNT(*)則是統計表中有多少條數據
COUNT(DISTINCT 列名) 統計不重復的記錄數
如果加上WHERE子句, 則是統計滿足條件的記錄
文章標題:mysql怎么復習 mysql怎么復制語句
文章源于:http://vcdvsql.cn/article20/ddoepco.html
成都網站建設公司_創新互聯,為您提供營銷型網站建設、品牌網站建設、網頁設計公司、品牌網站制作、網站策劃、全網營銷推廣
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯