sql及DDL語句操作
1、sql介紹
結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的程式語言,是一種資料庫查詢和程式設計語言,用於存取資料以及查詢、更新和管理關係資料庫系統;同時也是資料庫指令碼檔案的副檔名。
2、MYSQL-SQL語句分類
DML(data manipulation language)是資料操縱語言:
(開發人員常用的命令)命令有SELECT、UPDATE、INSERT、DELETE,就象它的名字一樣,這4條命令是用來對資料庫裡的表資料進行操作的語言。
DDL(data definitionlanguage)是資料定義語言:
(DBA用,開發人員很少用)命令有show,ALTER,CREATE、DROP,等,DDL主要是用在對資料庫例項、表、列等資料庫物件的定義和操作。
DCL(DataControlLanguage)是資料庫控制語言:
(DBA用)是用來設定或更改資料庫使用者或角色許可權的語句,包括(grant,deny,revoke等)語句。
3、常用DDL命令操作
資料庫命名:資料庫例項名、表名、列名通常單詞都是小寫字母通過下劃線分隔,很多資料庫裡不區分大小寫。
1)資料庫例項相關
資料庫例項:一個數據庫伺服器可以有很多資料庫例項,一般一個數據庫例項對應一個專案(產品),每個例項裡可以有很多張表(實體),可以把資料庫例項理解為表的倉庫。
簡單理解:對應java的包,包是組織管理類,資料庫例項組織管理表。
1.1、檢視所有資料庫例項
SHOW DATABASES;
1.2、建立資料庫例項
CREATE DATABASE dbname;
1.3、選擇將要操作的資料庫例項
USE dbname;
1.4、刪除資料庫例項
DROP DATABASE dbname;
DROP DATABASE if exists dbname;
2)資料庫中表相關
表中相關概念
1)表(實體):可以理解為就是java中的類,類可以有多個物件,表可以有多條記錄。類中定義了物件擁有的屬性(有型別)。
表中定義了記錄的各種列(有型別)。表中可以儲存很多的記錄。
2)列(欄位)(屬性):可以理解為java中類的成員變數,每一條記錄可以有多個列組成,如:張三,18,男,170。這條記錄,分成了多個列儲存,可更加高效管理資料。
3)型別(域):為列指定的資料型別,與java資料型別(字串,數字,時間)類似。
4)主鍵(關鍵字):用來判斷不同記錄,每一條記錄的主鍵都不同,主鍵是特殊的列或列組合(聯合主鍵),理解為java的物件的地址。
例如:人的物件的地址,手的物件的地址。
5)外來鍵:用來指定該列資料,參考了某個表的列,該列資料依賴某一個參考列。不能隨便填值,必須是參考列的值或null,可以理解為java類中組合其他類(成員變數),該值只能是其他類的物件的地址或null。
例如:人的物件裡持有的手的物件的地址。
注意:某個表a設定了a1列為外來鍵,外來鍵參考表b的b1列,那麼這裡a則是從表,b是主表。新增資料的時候先主表,後從表。(因為外來鍵列的值,必須是參考列的值或null)
2.1、選擇將要操作的資料庫例項(執行該程式碼後,後續的表操作針對我們設定的資料庫例項)
USE dbname;
2.2、查詢當前使用資料庫例項包含的所有表
show tables;
2.3、建立表
CREATE TABLE tablename(
//列(欄位)列表
列名1 型別 相關配置,
列名2 型別 相關配置,
列名3 型別 相關配置
....
);
CREATE TABLE tablename(
id INT(11) NOT NULL auto_increment,
moneyint(10) unsigned zerofill default NULL,
name VARCHAR(256) NOT NULL,
PRIMARY KEY (`id`)--指定該表的主鍵,可以多個列(關鍵字)
);
2.4、顯示錶結構資訊(列資訊)
desctablename
2.5、查看錶建立語句(完整語句=包含預設值)
showcreate table tablename;
2.6、刪除表
DROP TABLE tablename;
DROP TABLE if exists tablename; (mysql 特有的)
2.7、表結構修改
2.7.1、修改表字段型別
語法: ALTER TABLE tablename MODIFY [COLUMN]column_definition [FIRST | AFTER col_name]
ALTER TABLE tablename MODIFY name CHAR(128) NOT NULL;
column_definition:cloumnnamecloumntype
2.7.2、增加表字段
語法:ALTER TABLE tablename ADD [COLUMN] column_definition [FIRST | AFTER col_name];
ALTER TABLE tablename ADD age INT(11) NOT NULL;
2.7.3、刪除表字段
語法: ALTER TABLE tablename DROP [COLUMN] col_name;
ALTER TABLE tablename DROP age;
2.7.4、表字段改名和型別
語法: ALTER TABLE tablename CHANGE [COLUMN] old_col_name new_col_definition [FIRST | AFTER col_name];
ALTER TABLE tablename change name uname CHAR(64);
注意:CHANGE和MODIFY都可以修改表字段定義,不同的是CHANGE寫兩次欄位名,但是CHANGE可以修改列名,而MODIFY則不能。
2.7.5、修改欄位排列順序
上面介紹的修改表定義後面都有一個可選專案[FIRST | AFTER col_name],這個選項可以用來修改欄位在表中的順序,ADD新增欄位的預設位置是在表的最後,CHANGE和MODIFY預設不改動欄位的位置。
在上表中新增birth欄位,並放到列id後面:
ALTER TABLE tablename ADD birth DATETIME AFTER id;
再次修改,把它放到uname表後面:
ALTER TABLE tablename MODIFY birth DATETIME NOT NULL AFTER uname;
2.7.6、修改表名
語法:ALTER TABLE tablename RENAME [TO] new_tablename;
如把上面表名tablename改成test:
ALTER TABLE tablename RENAME test;
練習-ddl語句
3、圖形化工具
navicat(推薦)
多資料庫
多連線
視覺化表操作
逆向到模型
......
......
mysql workbench
phpMyAdmin
相關推薦
sql及DDL語句操作
1、sql介紹 結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的程式語言,是一種資料庫查詢和程式設計語言,用於存取資料以及查詢、更新和管理關係資料庫系統;同時也是資料庫指令碼檔案的副檔名。 2、MYSQL-SQL語句分類
Mysql DDL語句操作
此內容摘自 "mysql5.7從入門到精通" 目錄 1.建立表 2.主鍵約束 3.外來鍵 4.使用非空約束 5.唯一約束 6.預設約束  
PL/SQL WHILE迴圈語句操作例項講解
WHILE迴圈語句在PL/SQL程式語言,只要給定的條件為真,則執行目標語句多次。給出求10的階乘的while迴圈操作原始碼:-- Created on 2018/3/23 by E.WANG /*
Oracle 過程中執行動態 SQL 或 DDL 語句
如果你用的是 Oracle 8i 及以上的版本,那簡單,在過程中用 execute immediate sql_str 就行, sql_str 是一個拼湊的 SQL 語句,但這個動態語句中帶引數,或 Select 的結果要 into 到變數中時就要稍加留心一下了。而在
使用MySQL for Navicat 建立使用者(連線) 及 SQL語句操作
(1)首先得先登入root使用者(即:DBA,root許可權),然後才能執行下面 use mysql; (2)建立 並 授權 英文,中文我沒找到解決方法 注意:此處的”localhost”,是指該使用者只能在本地登入,不能在另外一
Hadoop Hive sql語法詳解1-認識hive及DDL操作
轉載自:http://www.aboutyun.com/thread-7324-1-1.html 1.認識hive:Hive 是基於Hadoop 構建的一套資料倉庫分析系統,它提供了豐富的SQL查詢方式來分析儲存在Hadoop 分散式檔案系統中的資料,可以將結構化的資料檔
JAVA中用 SQL語句操作小結
update 數據類型 where條件 ring 行數 實用 英文 delet date 1、添加記錄(INSERT) 使用SQL語句的INSERT命令可以向數據庫中插入記錄,INSERT命令的基本形式為: INSERT INTO 表名 [(字段名1,字段名2…)] VAL
Shell腳本中執行sql語句操作
out ins host source con more char 演示 -1 這篇文章主要介紹了Shell腳本中執行sql語句操作mysql的5種方法,本文講解了將SQL語句直接嵌入到shell腳本文件中、命令行調用單獨的SQL文件、使用管道符調用SQL文件等方法,需
sql 語句操作,修改字段中字符串的一部分
ron str web ebe pda rep 字符 ace replace update 表名 set 字段=replace(字段,‘替換的部分’,‘替換後的字符串’); update 表名 set A=replace( A, ‘海澱‘, ‘朝陽‘) where A li
數據庫 之 表操作(DDL語句)和索引
數據庫 表操作 1 概述表是一種很重要的數據庫對象,是組成數據庫的基本元素,由若幹個字段組成。主要用來存儲數據記錄。表的操作,包含創建表、刪除表、修改表等。給表中的字段創建索引,將提高查詢的速度。表的操作涉及DDL: DataDefinationLanguage,數據定義語言,關鍵字:CREATE,
第八章,用SQL語句操作數據
values 通過 select語句 sql 定義 開頭 更新數據 算數運算 優先級 SQL的組成: (1)DML(Data Manipiation Language ,數據操作語言,)用來插入,修改和刪除數據庫中的數據,如:INSERT,UPDATE,DELETE等。
使用T-SQL語句操作數據表-插入數據
行數 不能 字符 但是 列表 插入 設計 數位 check約束 插入數據(insert)語法:insert [into] <表名> [列名] values <值列表>解釋:insert :是語法名,插入的意思into:是選填的,可以省略。
使用T-SQL語句操作數據表-刪除數據
語句 但是 sql truncate 表格 內容 表名 刪除表格 rom 1.使用 delete 語句刪除表中的數據:語法:delete from <表名> [where <刪除條件>]delete 是刪除的意思 where是選填內容可以
使用T-SQL語句操作數據表-查詢數據
成績表 例子 別名 默認 分數 from having lec ade 查詢(select)的基本格式:select <列名> from <表名> [where <查詢限定條件>]解釋:select 查詢的命令體列名:要查詢
使用T-SQL語句操作視圖
word tail 分享 判斷 from eat student span ref 轉自:使用T-SQL語句操作視圖 提示:只能查看,刪除,創建視圖,不能對數據進行增,刪,改操作。 use StuManageDB go --判斷視圖是否存在 if exists
用SQL語句操作數據
大小寫 存在 dcl 算數運算 變量 UC 函數 creat nio 使用T-SQL插入數據 1.SQL簡介 (1)SQL是什麽 structured Query Language:結構化查詢語句 *不區分
用SQL語句操作數據------解析
解析 語句 錯誤 表名 標識 組成 nio 分隔 數據 一.SQL 結構化查詢語言 1.T-SQL 和 SQL的關系 T-SQL是SQL的增強版 2.SQL的組成 2.1 DML (數據操作語言) 增加,修改,刪除等數據操作 2.2 DCL (數據控制語言) 存儲許可,存儲
mysql系列詳解二:sql語句操作-技術流ken
option art sql con student redundant cascade 枚舉 創建索引 1.簡介 本篇博客將詳細講解mysql的一些常用sql語句操作,例如創建數據庫,刪除數據庫,創建表,修改表,刪除表,以及簡單查詢案例。 2.關於mysql數據中的S
mysql 操作sql語句 操作數據表
ibdata myisam war hang mysqld () 作文 microsoft sorted #2. 操作文件 先切換到文件夾下:use db1查看當前所在的數據庫 mysql> select database(); +---------
Django中使用mysql資料庫並使用原生sql語句操作
Django自身預設使用sqlite3這個輕量級的資料庫,但是當我們開發網站時,sqlite3就沒有mysql好,sqlite3適合一些手機上開發使用的資料庫。 準備的軟體 mysql資料庫,版本5.7及以上。 navicat,(可選的)。使用navicat主要是簡化我