① transact-sql語法規則
Transact-sql也稱T-SQL,是SQL Server常用的編程語言,支持存儲過程和函數。語法規則和普通SQL類似,但是是結構化的。
② 使用Transact—SQL語言創建教學管理資料庫,創建兩個表學生信息的步驟是什麼
--學生信息(學號,姓名,性別,籍貫,班級編號)和成績表(學號,課程編號,成績,是否重修
--學生信息表中學號為主鍵,其他信息都不允許為空
--通過學號與成績表形成一個一對多的關系,成績表中的成績的默認值為0,但必須在0~100之間。
CREATETABLE學生信息
(
學號INTIDENTITY
NOTNULL
PRIMARYKEY,
姓名VARCHAR(50)NOTNULL,
性別BITNOTNULL
DEFAULT(0),
籍貫VARCHAR(50)NOTNULL,
班級編號INTNOTNULL
);
CREATETABLE成績
(
學號INTNOTNULL
FOREIGNKEYREFERENCES學生信息(學號),
課程編號INTNOTNULL,
成績INTNOTNULL
DEFAULT(0),
是否重修BITNOTNULL
DEFAULT(0)
);
ALTERTABLE成績ADDCONSTRAINTck_成績CHECK(100>=成績AND成績>=0);
SELECT*FROM學生信息;
SELECT*FROM成績;
③ 使用 Transact-SQL 創建資料庫的步驟有分急求
use master
go
if exists(select * from sysdatabases where name='Students')
drop database Students
go
create database Students
on primary
(
name=Students_data1,
filename='D:\Students_data1.mdf',
size=10mb,
filegrowth=10%,
maxsize=200mb
)
--on Secondary
(
name=Students_data2,
filename='D:\Students_data2.ndf',
size=5mb
)
log on
(
name=Students_log,
filename='D:\Students_log.ldf',
size=3mb
)
④ 使用Transact-SQL語句創建一個資料庫,創建表
--1--
createdatabasetest2
on(name='test2_dat',filename='D:SQLDB est2.mdf',size=3MB,maxsize=9MB,filegrowth=8%)
logon(name='test2_log',filename='D:SQLDB est2_log.ldf',size=1MB,maxsize=5MB,filegrowth=0)
--2.1--
usetest2
createtableXSZG1(工號char(4),姓名char(8),性別char(2),婚否char(4),年齡int,基本工資int)
--2.2--
insertintoXSZG1
select1001,'李小新','男','已婚',33,1800union
select1002,'趙小蕊','女','未婚',28,2200union
select1003,'錢學塘','男','已婚',45,3500union
select1004,'李明啟','男','已婚',56,5500union
select1005,'肖小風','女','未婚',27,1800union
select1006,'黃興民','男','已婚',46,3300
--2.3--
createtableXSZG2(工號char(4),職稱char(12),獎金int)
--2.4--
insertintoXSZG2
select1001,'普通員工',300union
select1002,'技師',600union
select1003,'工程師',800union
select1004,'高級技師',1400union
select1005,'工程師',800union
select1006,'技師',600
--3--
createclusteredindexghonXSZG1(工號asc)with(fillfactor=30)
go
--4--
createviewXSZG
as
selectXSZG1.工號,姓名,年齡,職稱,獎金fromXSZG1,XSZG2whereXSZG1.工號=XSZG2.工號
go
--5--
select工號as'年齡低於平均年齡者',姓名,年齡fromXSZG1where年齡<(selectAVG(年齡)fromXSZG1)
6,7題參考上面1,2題
⑤ 怎樣使用transact-sql語言創建資料庫
CREATE DATABASE — 創建新資料庫
CREATE DATABASE name [ WITH LOCATION = 'dbpath' ]
輸入
name
要創建的資料庫名.
dbpath
在文件系統里存儲新資料庫的可選位置。參閱下面的注意事項。
輸出
CREATE DATABASE
命令成功執行的返回信息.
ERROR: user 'username' is not allowed to create/drop databases
你必須有特殊的 CREATEDB 許可權來創建資料庫。參閱 CREATE USER。
ERROR: createdb: database "name" already exists
如果聲明的資料庫 database 已經存在返回的信息.
ERROR: Single quotes are not allowed in database names., ERROR: Single quotes are not allowed in database paths.
資料庫 name 和 dbpath 不能包含單引號。這樣要求是為了創建資料庫目錄的 shell 命令能夠正確執行。
ERROR: The path 'xxx' is invalid.
對聲明的 dbpath 擴展(參閱下面為什麼)失敗。檢查你輸入的路徑或者確信你引用的環境變數的確存在。
ERROR: createdb: May not be called in a transaction block.
如果你有一個顯式的事務塊正在處理,你不能調用 CREATE DATABASE。你必須先結束事務。
ERROR: Unable to create database directory 'xxx'., ERROR: Could not initialize database directory.
這種情況最有可能是對數據目錄許可權不夠,磁碟已滿或其他文件系統問題。資料庫伺服器運行的機器上的用戶必須能反問該路徑。
描述
CREATE DATABASE 創建一個新的 PostgreSQL 資料庫.創建者成為新資料庫的管理員.
可以聲明一個可選的資料庫位置,例如,為了在另一塊硬碟上存放資料庫。該路徑必須是事先用 initlocation 准備好了的.
如果路徑包含斜杠,那麼(斜杠)前面的部分被解釋成一個環境變數,該變數必須為服務進程所知。這樣資料庫管理員可以對能夠在那裡創建資料庫進行控制。(例如,一個用戶化的選擇是 'PGDATA2'。)如果伺服器被編譯成帶有 ALLOW_ABSOLUTE_DBPATHS (預設時沒有)選項,以斜杠開頭為標識的絕對路徑(例如, '/usr/local/pgsql/data')同樣也允許。
⑥ Transact-SQL 概述和語法規則能講一下嗎
與 SQL Server 通訊的所有應用程序都通過向伺服器發送 Transact-SQL 語句來進行通訊,而與應用程序的用戶界面無關。 Transact-SQL 由多種應用程序生成,包括:通用辦公生產應用程序。使用圖形用戶界面(GUI)的應用程序,使用戶得以選擇包含要查看的數據的表和列。使用通用語言語句確定用戶所要查看數據的應用程序。將其數據存儲於 SQL Server 資料庫中的商用應用程序。這些應用程序既可以是來自其它廠商的應用程序,也可以是內部編寫的應用程序。使用osql 等實用工具運行的 Transact-SQL 腳本。由開發系統(如 Microsoft Visual C++�0�3、Microsoft Visual Basic�0�3 或 Microsoft Visual J++�0�3)使用資料庫應用程序介面 (API)(如 ADO、OLE DB 以及 ODBC)創建的應用程序。從SQL Server 資料庫提取數據的 Web 頁。分布式資料庫系統,在此系統中將數據從 SQL Server 復制到各個資料庫或執行分布式查詢。數據倉庫,從聯機事務處理 (OLTP) 系統中提取數據,以及對數據匯總以進行決策支持分析,均可在此倉庫中進行。
Transact-SQL 語法規則 Transact-SQL 引用中的語法關系圖使用下列規則。規范 用於
大寫Transact-SQL 關鍵字。
斜體Transact-SQL 語法中用戶提供的參數。
| (豎線) 分隔括弧或大括弧內的語法項目。只能選擇一個項目。
[ ] (方括弧) 可選語法項目。不必鍵入方括弧。
{}(大括弧) 必選語法項。不要鍵入大括弧。
[ ,...n ] 表示前面的項可重復 n 次。每一項由逗號分隔。
[ ...n ] 表示前面的項可重復 n 次。每一項由空格分隔。
加粗 資料庫名、表名、列名、索引名、存儲過程、實用工具、數據類型名以及必須按所顯示的原樣鍵入的文本。
::= 語法塊的名稱。此規則用於對可在語句中的多個位置使用的過長語法或語法單元部分進行分組和標記。適合使用語法塊的每個位置由括在尖括弧內的標簽表示:。 除非另外指定,否則所有對資料庫對象名的 Transact-SQL 引用可以是由四部分組成的名稱,格式如下:[
server_name.[database_name].[owner_name].
| database_name.[owner_name].
| owner_name.]]object_name server_name 指定鏈接伺服器名稱或遠程伺服器名稱。當對象駐留在 SQL Server 資料庫中時,database_name 指定該 Microsoft�0�3 SQL Server�6�4 資料庫的名稱。當對象在鏈接伺服器中時則指定 OLE DB 目錄。如果對象在 SQL Server 資料庫中,owner_name 指定擁有該對象的用戶。當對象在鏈接伺服器中時則指定 OLE DB 架構名稱。object_name 引用對象的名稱。
當引用某個特定對象時,不必總是為 SQL Server 指定標識該對象的伺服器、資料庫和所有者。可以省略中間級節點,而使用句點表示這些位置。對象名的有效格式是:server.database.owner.objectserver.database..objectserver..owner.objectserver...objectdatabase.owner.objectdatabase..objectowner.object對象代碼示例規則
除非另外規定,否則示例已使用 SQL Server 查詢分析器和以下選項的默認設置進行了測試: QUOTED_IDENTIFIERANSI_NULLSANSI_WARNINGSANSI_PADDINGANSI_NULL_DFLT_ONCONCAT_NULL_YIELDS_NULL
Transact-SQL 引用中的大多數代碼示例都已在運行區分大小寫排序次序的伺服器上進行了測試。測試伺服器通常運行 ANSI/ISO 1252 代碼頁。Transact-SQL 數據類型分類
具有相似特性的數據類型被劃分在分類中。包含兩個或三個數據類型的分類一般有一個分類名稱,該名稱從這個分類中的數據類型衍生而來。例如,money 和 smallmoney 分類包含 money 數據類型和 smallmoney 數據類型。數據類型名稱總是顯示為粗體,即使用作分類名稱的一部分也是如此。Transact-SQL 數據類型層次結構
下面的數據類型層次結構顯示在 SQL Server 文檔中使用的 SQL Server 數據類型分類、子分類和數據類型。例如,精確數字分類包含三個子分類:整數、decimal、money 和 smallmoney。精確數字分類還包含上述三個子分類中的所有數據類型:bigint、int、smallint、tinyint、bit、decimal、money 和 smallmoney。Transact-SQL 參考中任何對精確數字的引用均指上述八種數據類型。在該層次結構中,由兩種或多種數據類型構成的類別名稱中使用連詞"和"。在 Transact-SQL 參考中,如果名稱所處的上下文更適合用"或",則可能使用連詞"或"。在該層次結構中指定的數據類型還適合同義詞。
⑦ 使用 Transact-SQL 創建索引
CREATE NONCLUSTERED INDEX IX_Contact_lastname_firstname_transact
ON person.contact (lastname,firstname)
include (title,middlename,suffix)