Ⅰ 如何用sql語句修改表結構
如果是mysql的話,安裝phpmyadmin,你的每一個操作都有語句顯示的。這是個學習的最好方法。
Ⅱ SQL的四個組成部分,到底是怎麼分的
(1)數據定義語言,即SQL DDL,用於定義SQL模式、基本表、視圖、索引等結構。
(2)數據操縱語言,即SQL DML。數據操縱分成數據查詢和數據更新兩類。
(3)數據查詢語言,即SQL DQL。
(4)數據控制語言,即SQL DCL,這一部分包括對基本表和視圖的授權、完整性規則的描述、事務控制等內容。
結構化查詢語言是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同資料庫系統, 可以使用相同的結構化查詢語言作為數據輸入與管理的介面。結構化查詢語言語句可以嵌套,這使它具有極大的靈活性和強大的功能。
(2)sql語句結構怎麼弄擴展閱讀:
SQL可以獨立完成資料庫生命周期中的全部活動,包括定義關系模式、錄入數據、建立資料庫、査詢、更新、維護、資料庫重構、資料庫安全性控制等一系列操作,這就為資料庫應用系統開發提供了良好的環境,在資料庫投入運行後,還可根據需要隨時逐步修改模式,且不影響資料庫的運行,從而使系統具有良好的可擴充性。
Ⅲ 如何用sql修改表的結構
用alter table語句試試,如果不行,可以如下辦法:
1、先創建一個臨時表(帶uid)的,例如表名叫:userinfo_temp。
2、將原來的userinfo中的數據導入到userinfo_temp中。
3、刪除userinfo表。
4、將userinfo_temp改名為userinfo。
Ⅳ 怎麼用sql語句查詢表的結構
下邊是SQLSERVER查詢數據字典的語法,如果相查某一個表,只需要加where條件一個表名的連接即可。
SELECT TOP 100 PERCENT --a.id,
CASE WHEN a.colorder = 1 THEN d.name ELSE '' END AS 表名,
CASE WHEN a.colorder = 1 THEN isnull(f.value, '') ELSE '' END AS 表說明,
a.colorder AS 欄位序號, a.name AS 欄位名, CASE WHEN COLUMNPROPERTY(a.id,
a.name, 'IsIdentity') = 1 THEN '√' ELSE '' END AS 標識,
CASE WHEN EXISTS
(SELECT 1
FROM dbo.sysindexes si INNER JOIN
dbo.sysindexkeys sik ON si.id = sik.id AND si.indid = sik.indid INNER JOIN
dbo.syscolumns sc ON sc.id = sik.id AND sc.colid = sik.colid INNER JOIN
dbo.sysobjects so ON so.name = si.name AND so.xtype = 'PK'
WHERE sc.id = a.id AND sc.colid = a.colid) THEN '√' ELSE '' END AS 主鍵,
b.name AS 類型, a.length AS 長度, COLUMNPROPERTY(a.id, a.name, 'PRECISION')
AS 精度, ISNULL(COLUMNPROPERTY(a.id, a.name, 'Scale'), 0) AS 小數位數,
CASE WHEN a.isnullable = 1 THEN '√' ELSE '' END AS 允許空, ISNULL(e.text, '')
AS 默認值, ISNULL(g.[value], '') AS 欄位說明, d.crdate AS 創建時間,
CASE WHEN a.colorder = 1 THEN d.refdate ELSE NULL END AS 更改時間
FROM dbo.syscolumns a LEFT OUTER JOIN
dbo.systypes b ON a.xtype = b.xusertype INNER JOIN
dbo.sysobjects d ON a.id = d.id AND d.xtype = 'U' AND
d.status >= 0 LEFT OUTER JOIN
dbo.syscomments e ON a.cdefault = e.id LEFT OUTER JOIN
dbo.sysproperties g ON a.id = g.id AND a.colid = g.smallid AND
g.name = 'MS_Description' LEFT OUTER JOIN
dbo.sysproperties f ON d.id = f.
id AND f.smallid = 0 AND
f.name = 'MS_Description'
where d.name = '表名'---查詢固定表,如果所有,去掉where條件
ORDER BY d.name, a.colorder
ORACLE資料庫使用USER_TAB_COLUMNS表
select TABLE_NAME,
COLUMN_NAME,
DATA_TYPE,
DATA_LENGTH
from USER_TAB_COLUMNS
Ⅳ 用SQL語句定義圖書表的結構
那就不要丟掉了現在!
一個怪影在歐洲游盪著……
但他的僕人沖進來,
一椏樹枝,一把椅,一塊圓石或者一個屋角,
操著步離去,忍受一個信仰,
什麼時候領個男朋友回來啊哈哈
Ⅵ 如何用SQL語句修改表結構
SQL腳本修改表結構
新建表:
createtable[表名]
(
[自動編號欄位]intIDENTITY(1,1)PRIMARYKEY,
[欄位1]nVarChar(50)default'默認值'null,
[欄位2]ntextnull,
[欄位3]datetime,
[欄位4]moneynull,
[欄位5]intdefault0,
[欄位6]Decimal(12,4)default0,
[欄位7]imagenull,
)
刪除表:
Droptable[表名]
Truncatetable[表名]--不寫log而且自增欄位復位從1開始
插入數據:
INSERTINTO[表名](欄位1,欄位2)VALUES(1,'ABC')
刪除數據:
DELETEFROM[表名]WHERE[欄位名]>100
更新數據:
UPDATE[表名]SET[欄位1]=1,[欄位2]='ABC'WHERE[欄位三]='what'
新增欄位:
ALTERTABLE[表名]ADD[欄位名]NVARCHAR(50)NULL
添加多個欄位時:ALTERTABLE[表名]ADD[欄位名]NVARCHAR(50)NULL,[欄位名]NVARCHAR(50)NULL
如:altertableDayLogaddaaachar(10),abbchar(10),accchar(10),adechar(10)
刪除欄位:
ALTERTABLE[表名]DROPCOLUMN[欄位名]
修改欄位:
ALTERTABLE[表名]ALTERCOLUMN[欄位名]NVARCHAR(50)NULL
重命名表:(Access重命名表,請參考文章:在Access資料庫中重命名表)
sp_rename'表名','新表名','OBJECT'
新建約束:
ALTERTABLE[表名]ADDCONSTRAINT約束名CHECK([約束欄位]<='2010-12-1')
刪除約束:
ALTERTABLE[表名]DROPCONSTRAINT約束名
如:IFEXISTS(SELECT*FROMdbo.sysobjectsWHEREid=OBJECT_ID(N'[dbo].[FK_BuiAddProType_BuildFunction]')ANDtype='F')
ALTERTABLE[dbo].[BuiAddProType]DROPCONSTRAINT[FK_BuiAddProType_BuildFunction]
GO
新建默認值
ALTERTABLE[表名]ADDCONSTRAINT默認值名DEFAULT'ABC'FOR[欄位名]
刪除默認值
ALTERTABLE[表名]DROPCONSTRAINT默認值名
Ⅶ SQL語句的結構
所有的SQL語句都有自己的格式,每條SQL語句都由一個謂詞開始,該謂詞描述這條語句要產生的動作。謂詞扣緊接著一個或多個子句,子句中給出了被謂詞作用的數據或提供謂詞動作的詳細信息,每一條子句由一個關鍵字開始。
Ⅷ 簡述SQL語言中SELECT語句的基本結構
Select 查詢語句
語法:SELECT [ALL|DISTINCT] <目標列表達式> [AS 列名]
[,<目標列表達式> [AS 列名] ...] FROM <表名> [,<表名>…]
[WHERE <條件表達式> [AND|OR <條件表達式>...]
[GROUP BY 列名 [HAVING <條件表達式>>
[ORDER BY 列名 [ASC | DESC>
解釋:[ALL|DISTINCT] ALL:全部; DISTINCT:不包括重復行
<目標列表達式> 對欄位可使用AVG、COUNT、SUM、MIN、MAX、運算符等
<條件表達式>
查詢條件 謂詞
比較 =、>,<,>=,<=,!=,<>,
確定范圍 BETWEEN AND、NOT BETWEEN AND
確定集合 IN、NOT IN
字元匹配 LIKE(「%」匹配任何長度,「_」匹配一個字元)、NOT LIKE
空值 IS NULL、IS NOT NULL
子查詢 ANY、ALL、EXISTS
集合查詢 UNION(並)、INTERSECT(交)、MINUS(差)
多重條件 AND、OR、NOT
<GROUP BY 列名> 對查詢結果分組
[HAVING <條件表達式>] 分組篩選條件
[ORDER BY 列名 [ASC | DESC> 對查詢結果排序;ASC:升序 DESC:降序
例1: select student.sno as 學號, student.name as 姓名, course as 課程名, score as 成績 from score,student where student.sid=score.sid and score.sid=:sid
例2:select student.sno as 學號, student.name as 姓名,AVG(score) as 平均分 from score,student where student.sid=score.sid and student.class=:class and (term=5 or term=6) group by student.sno, student.name having count(*)>0 order by 平均分 DESC
例3:select * from score where sid like '9634'
例4:select * from student where class in (select class from student where name='楊全')
Ⅸ SQL語句怎麼寫先按時間排序,再按姓名排序
select client,ID,taskdate from 表名 order BY client asc,taskdate,ID desc(如果讓client為降序的話order by改成group by,asc改成desc,ID要升序desc改成asc)
將欄位依次寫在order by 後面即可 , 中間用逗號隔開
select * from 表 order by time , name
select * from 表 order by time asc , name asc
select * from 表 order by time desc , name desc
select * from 表 order by time asc , name desc
select * from 表 order by time desc , name asc
(注: asc 表示升序 , desc表示降序 , 未明確寫明排序方式時默認是升序 )
與之類似的語法是 group by , 按多個欄位分組時 , 也是依次將多個欄位寫在group by 的後面 , 並用逗號隔開 , 範例如下:
select time , name , sum(*) from 表 group by time , name
(9)sql語句結構怎麼弄擴展閱讀
可以把 SQL 分為兩個部分:數據操作語言 (DML) 和 數據定義語言 (DDL)。
SQL (結構化查詢語言)是用於執行查詢的語法。但是 SQL 語言也包含用於更新、插入和刪除記錄的語法。
查詢和更新指令構成了 SQL 的 DML 部分:
SELECT- 從資料庫表中獲取數據
UPDATE- 更新資料庫表中的數據
DELETE- 從資料庫表中刪除數據
INSERT INTO- 向資料庫表中插入數據
SQL 的數據定義語言 (DDL) 部分使我們有能力創建或刪除表格。我們也可以定義索引(鍵),規定表之間的鏈接,以及施加表間的約束。
SQL 中最重要的 DDL 語句:
CREATE DATABASE- 創建新資料庫
ALTER DATABASE- 修改資料庫
CREATE TABLE- 創建新表
ALTER TABLE- 變更(改變)資料庫表
DROP TABLE- 刪除表
CREATE INDEX- 創建索引(搜索鍵)
DROP INDEX- 刪除索引
Ⅹ 這個SQL語句是怎麼弄的有誰知道
我用的是sql不知道在access中有沒有不同
create table 定購單(
職工號 varchar(20),
供應商號 varchar(20),
定購單號 varchar(50),
定購日期 datetime,
)
如果定購單號是主鍵,定購單號 varchar(50) primary key,
insert 定購單 values('E3','S7','OR67',cast('2006-1-1' as datetime))
參考一下