SQL 常用腳本整理

2021-12-28 數據不吹牛


常用功能腳本

1mysqldump -u 用戶名 -p –default-character-set=latin1 資料庫名 > 導出的文件名(資料庫默認編碼是latin1)  
2
3mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql  

2.導出一個表  

1mysqldump -u 用戶名 -p 資料庫名 表名> 導出的文件名  
2
3mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql  

3.導出一個資料庫結構  

1mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:wcnc_db.sql  
2
3-d 沒有數據 –add-drop-table 在每個create語句之前增加一個drop table   

4.導入資料庫  

1A:常用source 命令  
2
3進入mysql資料庫控制臺,  
4
5如mysql -u root -p  
6
7mysql>use 資料庫  
8
9然後使用source命令,後面參數為腳本文件(如這裡用到的.sql)  
10
11mysql>source wcnc_db.sql  
12
13B:使用mysqldump命令  
14
15mysqldump -u username -p dbname < filename.sql  
16
17C:使用mysql命令  
18
19mysql -u username -p -D dbname < filename.sql  
1、進入MySQL:啟動MySQL Command Line Client(MySQL的DOS界面),直接輸入安裝時的密碼即可。此時的提示符是:mysql>  命令:create database <資料庫名>  mysql> create database sqlroad;  命令:show databases (注意:最後有個s)  mysql> drop database sqlroad;  mysql> select database();  mysql> show tables; (注意:最後有個s)  

1、建表  

1命令:create table <表名> ( <欄位名> <類型> [,..<欄位名n> <類型n>]);  
2
3mysql> create table MyClass(  
4
5> id int(4) not null primary key auto_increment,  
6
7> name char(20) not null,  
8
9> sex int(4) not null default 』′,  
10
11> degree double(16,2));  

2、獲取表結構  

1命令:desc 表名,或者show columns from 表名  
2
3mysql>DESCRIBE MyClass  
4
5mysql> desc MyClass;  
6
7mysql> show columns from MyClass;  

3、刪除表  

1命令:drop table <表名>  
2
3例如:刪除表名為 MyClass 的表  
4
5mysql> drop table MyClass;  

4、插入數據  

1命令:insert into <表名> [( <欄位名>[,..<欄位名n> ])] values ( 值 )[, ( 值n )]  
2
3例如,往表 MyClass中插入二條記錄, 這二條記錄表示:編號為的名為Tom的成績為.45, 編號為 的名為Joan 的成績為.99,編號為 的名為Wang 的成績為.5.  
4
5mysql> insert into MyClass values(1,』Tom』,96.45),(2,』Joan』,82.99), (2,』Wang』, 96.59);  

5、查詢表中的數據  

11)、查詢所有行  
2
3命令:select <欄位,欄位,...> from < 表名 > where < 表達式 >  
4
5例如:查看表 MyClass 中所有數據  
6
7mysql> select * from MyClass;  
8
92)、查詢前幾行數據  
10
11例如:查看表 MyClass 中前行數據  
12
13mysql> select * from MyClass order by id limit 0,2;  
14
15或者:  
16
17mysql> select * from MyClass limit 0,2;  

6、刪除表中數據  

1命令:delete from 表名 where 表達式  
2
3例如:刪除表 MyClass中編號為 的記錄  
4
5mysql> delete from MyClass where id=1;  

7、修改表中數據:update 表名 set 欄位=新值,…where 條件  

1mysql> update MyClass set name=』Mary』where id=1;  

8、在表中增加欄位:  

1命令:alter table 表名 add欄位 類型 其他;  
2
3例如:在表MyClass中添加了一個欄位passtest,類型為int(4),默認值為  
4
5mysql> alter table MyClass add passtest int(4) default 』′  
6

9、更改表名:  

1命令:rename table 原表名 to 新表名;  
2
3例如:在表MyClass名字更改為YouClass  
4
5mysql> rename table MyClass to YouClass;  
6
7更新欄位內容  
8
9update 表名 set 欄位名 = 新內容  
10
11update 表名 set 欄位名 = replace(欄位名,』舊內容』, 新內容』)  
12
13update article set content=concat(『  』,content);  
2.DOUBLE[(M,D)] [ZEROFILL] 型:正常大小(雙精密)浮點數字類型  3.DATE 日期類型:支持的範圍是-01-01到-12-31。MySQL以YYYY-MM-DD格式來顯示DATE值,但是允許你使用字符串或數字把值賦給DATE列  4.CHAR(M) 型:定長字符串類型,當存儲時,總是是用空格填滿右邊到指定的長度  5.BLOB TEXT類型,最大長度為(2^16-1)個字符。  1創建.sql文件  
2
3先產生一個庫如auction.c:mysqlbin>mysqladmin -u root -p creat auction,會提示輸入密碼,然後成功創建。  
4
5導入auction.sql文件  
6
7c:mysqlbin>mysql -u root -p auction < auction.sql。  
8
9通過以上操作,就可以創建了一個資料庫auction以及其中的一個表auction。   

8.修改資料庫  

1在mysql的表中增加欄位:  
2
3alter table dbname add column userid int(11) not null primary key auto_increment;  
4
5這樣,就在表dbname中添加了一個欄位userid,類型為int(11)。  

9.mysql資料庫的授權  

1mysql>grant select,insert,delete,create,drop  
2
3on *.* (或test.*/user.*/..)  
4
5to 用戶名@localhost  
6
7identified by 『密碼』;  
8
9如:新建一個用戶帳號以便可以訪問資料庫,需要進行如下操作:  
10
11mysql> grant usage  
12
13  -> ON test.*  
14
15  -> TO testuser@localhost;  
16
17  Query OK, 0 rows affected (0.15 sec)  
18
19  此後就創建了一個新用戶叫:testuser,這個用戶只能從localhost連接到資料庫並可以連接到test 資料庫。下一步,我們必須指定testuser這個用戶可以執行哪些操作:  
20
21  mysql> GRANT select, insert, delete,update  
22
23  -> ON test.*  
24
25  -> TO testuser@localhost;  
26
27  Query OK, 0 rows affected (0.00 sec)  
28
29  此操作使testuser能夠在每一個test資料庫中的表執行SELECT,INSERT和DELETE以及UPDATE查詢操作。現在我們結束操作並退出MySQL客戶程序:  
30
31  mysql> exit  
1:使用SHOW語句找出在伺服器上當前存在什麼資料庫:  mysql> Create DATABASE MYSQLDATA;  mysql> USE MYSQLDATA; (按回車鍵出現Database changed 時說明操作成功!)  mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));  mysql> insert into MYTABLE values (「hyq」,」M」);  8:用文本方式將數據裝入資料庫表中(例如D:/mysql.txt)  mysql> LOAD DATA LOCAL INFILE 「D:/mysql.txt」INTO TABLE MYTABLE;  9:導入.sql文件命令(例如D:/mysql.sql)  mysql>source d:/mysql.sql;  mysql>drop TABLE MYTABLE;  mysql>delete from MYTABLE;  mysql>update MYTABLE set sex=」f」where name=』hyq』;

相關焦點

  • SQL常用腳本整理(下)
    19、TRUNCATE 與 DELETETRUNCATE 是SQL中的一個刪除數據表內容的語句,用法是:TRUNCATE TABLE [Table Name] 速度快,而且效率高,因為: TRUNCATE TABLE 在功能上與不帶 WHERE 子句的 DELETE 語句相同:二者均刪除表中的全部行
  • 我SQL常用腳本整理(下)
    接上一章我們繼續分享一些簡單並且比較實用的SQL腳本
  • Linux常用Shell腳本,值得學習及收藏
    linux運維常用的腳本。sleep 2  exit  fi  ###mysqldump backup mysql  /usr/bin/mysqldump -u$MYSQLUSR -p$MYSQLPW -d $MYSQLDB >/data/backup/mysql/`date +%Y-%m-%d`/www_db.sql  cd $BAKDIR ; tar -czf  www_mysql_db.tar.gz *.sql
  • Linux常用Shell腳本知多少
    ,腳本會讓我們的 運維事半功倍,所以學會寫腳本是我們每個linux運維必須學會的一門功課,這裡收藏linux運維常用的腳本。如何學好腳本,最關鍵的是就是大量的練習 和實踐。根據以下腳本我們可以拓展,這樣我們提高的很快!舉一反三!小夥伴要是不熟悉linux的話可以在公眾號內回復 「linux」 獲取linux的教程 之後咱們再來回過頭來學一學腳本1.用Shell編程,判斷一文件是不是字符設備文件,如果是將其拷貝到 /dev 目錄下。
  • oracle常用SQL語句(匯總版)
    Oracle資料庫常用sql語句ORACLE 常用的SQL語法和數據對象一.數據控制語句 (DML) 部分1
  • SQL常用語句總結
    Moratuwa大學生物信息學研究員Vijini Mallawaarachchi總結了常用的SQL語句用法,可供參考和溫習。本文總結了常用的SQL語句,尤其適合在面試前複習你的SQL知識。你可以嘗試文中的例子,溫習下你很久以前在資料庫系統課程上學到的知識。為了演示每個命令的用法,我們將使用一個樣例資料庫。
  • 資源下載丨Oracle優化工程師常用的34個腳本
    墨墨導讀:本文分享Oracle駐場工程師常用的腳本,基本上包含了日常監控、維護、故障定位及處理、SQL性能優化大部分場景
  • Mybatis 動態 SQL 處理
    封裝SqlNodeSqlNode是在解析Xml文件的時候對動態Sql進行解析,並存在MappedStatement的sqlSource屬性中。對於嵌套動態Sql,mybatis用遞歸調用來進行解析。這塊東西個人覺得還是比較繞,所以這塊博主準備事例、源碼、執行結果一起講解。Sql腳本分類在Mybatis中Sql腳本分為2種類型:靜態Sql和動態Sql。
  • Oracle常用經典SQL查詢(一)
    username format a12column opname format a16column progress format a8select username,sid,opname,      round(sofar*100 / totalwork,0) || '%' as progress,      time_remaining,sql_text
  • 【學習筆記】MySql常用sql
    allschemas.sql################################################################################# Name     :  allschemas.sql
  • Mybatis動態Sql處理
    封裝SqlNodeSqlNode是在解析Xml文件的時候對動態Sql進行解析,並存在MappedStatement的sqlSource屬性中。對於嵌套動態Sql,mybatis用遞歸調用來進行解析。這塊東西個人覺得還是比較繞,所以這塊博主準備事例、源碼、執行結果一起講解。Sql腳本分類在Mybatis中Sql腳本分為2種類型:靜態Sql和動態Sql。
  • 資料庫SQL腳本優化
    語句儘可能簡單點,一個大的sql要是在滿足業務需求的情況下可以分解為多個小sql是最好的。因為一個sql只能在一個cpu運算。(前兩天就有一個超大的sql,最後通過分解成三個小的sql,通過中間表傳遞實現最終需求)6、or改寫成in,因為or的效率是n級別的,in的效率是log(n)級別的,in的個數儘量不要太多,最好控制在200以內7、避免在where條件列上不乾淨,比如說SELECT id WHERE age + 1 = 10,或者對age
  • SQL語句的常用語法
    下面就為大家帶來一篇sql語句的常用語法 。個人覺得挺不錯的,學習MYSQL資料庫還是有點幫助的,給大家做個參考吧。
  • Linux—shell腳本實例進階篇
    刪除用戶1.編寫腳本:[root@localhost mnt]#!1.編寫腳本:[root@foundation71 mnt]#!>3.備份文件名稱為「庫名稱.sql」,當此文件存在是跳過,並詢問動作4.輸入」s「跳過備份,輸入」b「備份「庫名稱.sql」文件為」庫名稱_backup.sql」,輸入」o「覆蓋原文件1.編寫腳本:#!
  • 關於Oracle導出到csv文件的腳本-spool方法
    Oracle就是這麼牛,從外部文件導入到Oracle中有N種方法,想把Oracle的數據導出成通用文件的方法卻不多,梳理下來大致有三種辦法:1、spool方法2、DBMS_SQL和UTL_FILE方法3、python等程序方法本文主要是第一種方法,使用spool命令實行將sql
  • oracle基礎知識學習-相關命令及自帶腳本說明
    這些腳本若不會使用,不知道是否添加參數,就先打開腳本,查看頁頭的說明,就明白是否需要執行時寫入參數。1.  @?/rdbms/admin/catlog.sql         執行這個腳本後,創建資料庫的統計視圖,審計視圖。2. @?
  • 如何使用 SQL Server FILESTREAM 存儲非結構化數據?
    通過執行腳本1中提供的T-SQL腳本來實現。腳本2給出了一個T-SQL腳本示例,該腳本能夠創建可以使用FILESTREAM的資料庫。NAME=Test_FILESTREAM_Log,FILENAME='d:\sqlbaza2019\mssql\data\FILESTREAM\Test_FILESTREAM.log')腳本2:創建可以使用FILESTREAM的資料庫的示例在文件系統上執行腳本
  • 最詳細的SQL注入相關的命令整理
    select * from dvbbs.dbo.syscolumns where id=5575058列出庫dvbbs中表id=5575058的所有欄位名18、刪除記錄命令:delete from Dv_topic where boardid=5 and topicid=797819、繞過登錄驗證進入後臺的方法整理:1) ' or''='2) '
  • Hive SQL基本使用詳解
    deicimal、String(字符串,不需要指定字符串長度)、varchar(需要指定字符串長度)、char、binary(字節數組)、timestamp(時間戳,納秒精度)、date(日期YYYY-MM-DD)複合數據類型:array:可通過下標獲取指定索引對應的值map:可通過key來獲取valuestruct:可以通過點.語法獲取union三:常用
  • windows下常用提高效率bat腳本分享
    windows下常用提高效率bat腳本分享