① 請教:sql 腳本編寫: 創建兩個整型變數,將他們的值分別設置為2和4,然後輸出這兩個變數的和 謝謝!
代碼如下:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a = 10;
int b = 20;
int c = 0;
printf("a = %d b = %d ", a, b);
c = a;
a = b;
b = c;
printf("a = %d b = %d ", a, b);
system("pause");
return 0;
}
(1)sql定義整數型擴展閱讀
SQL的整數型數據包括bigint型、int型、bit、smallint型和tinyint型。
bigint型數據的存儲大小為8個位元組,共64位。其中63位用於表示數值的大小,1位用於表示符號。bigint型數據可以存儲的數值范圍是-263~263-1,即 -9 223 372 036 854 775 808 ~9 223 372 036 854 775 807。
在應用中除非明確說明,否則那些接受int表達式作為其參數的函數、語句和系統存儲過程都不會改變,從而不會支持將 bigint表達式隱式轉換為這些參數。因此,當 bigint值在int數據類型支持的范圍內時,SQL Server 才將 bigint隱式轉換為int。
如果 bigint表達式包含了一個在int數據類型支持范圍之外的值,就會在運行時出現轉換錯誤。
② sql server怎麼定義數據類型
SQLServer 提供了 25 種數據類型:
Binary [(n)],Varbinary [(n)],Char[(n)],Varchar[(n)],Nchar[(n)],Nvarchar[(n)],Datetime,Smalldatetime
Decimal[(p[,s])],Numeric[(p[,s])],Float[(n)],Real,Int,Smallint,Tinyint,Money,Smallmoney,Bit,Cursor
Sysname,Timestamp,Uniqueidentifier,Text,Image,Ntext。
下面來分別介紹這些數據類型:
(1)二進制數據類型
二進制數據包括 Binary、Varbinary 和 Image
Binary 數據類型既可以是固定長度的(Binary),也可以是變長度的。
Binary[(n)] 是 n 位固定的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲窨的大小是 n + 4 個位元組。
Varbinary[(n)] 是 n 位變長度的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲窨的大小是 n + 4個位元組,不是n 個位元組。
在 Image 數據類型中存儲的數據是以位字元串存儲的,不是由 SQL Server 解釋的,必須由應用程序來解釋。
例如,應用程序可以使用BMP、TIEF、GIF 和 JPEG 格式把數據存儲在 Image 數據類型中。
(2)字元數據類型
字元數據的類型包括 Char,Varchar 和 Text
字元數據是由任何字母、符號和數字任意組合而成的數據。
Varchar 是變長字元數據,其長度不超過 8KB。
Char 是定長字元數據,其長度最多為 8KB。
超過 8KB 的ASCII 數據可以使用Text數據類型存儲。例如,因為 Html 文檔全部都是 ASCII 字元,
並且在一般情況下長度超過 8KB,所以這些文檔可以 Text 數據類型存儲在SQL Server 中。
(3)Unicode 數據類型
Unicode 數據類型包括 Nchar,Nvarchar 和Ntext
在 Microsoft SQL Server 中,傳統的非 Unicode 數據類型允許使用由特定字元集定義的字元。
在 SQL Server安裝過程,允許選擇一種字元集。使用 Unicode 數據類型,列中可以存儲任何由Unicode 標準定義的字元。
在 Unicode 標准中,包括了以各種字元集定義的全部字元。使用Unicode數據類型,
所戰勝的窨是使用非 Unicode 數據類型所佔用的窨大小的兩倍。
在 SQL Server 中,Unicode 數據以 Nchar、Nvarchar 和 Ntext 數據類型存儲。
使用這種字元類型存儲的列可以存儲多個字元集中的字元。當列的長度變化時,應該使用Nvarchar 字元類型,
這時最多可以存儲 4000 個字元。當列的長度固定不變時,應該使用 Nchar 字元類型,同樣,
這時最多可以存儲4000 個字元。當使用 Ntext 數據類型時,該列可以存儲多於 4000 個字元。
(4)日期和時間數據類型
日期和時間數據類型包括 Datetime 和 Smalldatetime兩種類型
日期和時間數據類型由有效的日期和時間組成。
例如,有效的日期和時間數據包括「4/01/98 12:15:00:00:00 PM」和「1:28:29:15:01AM 8/17/98」。
前一個數據類型是日期在前,時間在後一個數據類型是霎時間在前,日期在後。
在 Microsoft SQL Server中,日期和時間數據類型包括Datetime 和 Smalldatetime 兩種類型時,
所存儲的日期范圍是從 1753 年 1 月 1 日開始,到9999 年12 月 31 日結束(每一個值要求 8 個存儲位元組)。
使用 Smalldatetime 數據類型時,
所存儲的日期范圍是 1900年 1 月 1日 開始,到 2079 年 12 月 31 日結束(每一個值要求 4 個存儲位元組)。
日期的格式可以設定。設置日期格式的命令如下:
Set DateFormat {format | @format _var|
其中,format | @format_var 是日期的順序。有效的參數包括 MDY、DMY、YMD、YDM、MYD 和 DYM。在默認情況下,日期格式為MDY。
例如,當執行 Set DateFormat YMD 之後,日期的格式為年 月 日 形式;
當執行 Set DateFormat DMY 之後,日期的格式為日 月有年 形式
(5)數字數據類型
數字數據只包含數字。數字數據類型包括正數和負數、小數(浮點數)和整數
整數由正整數和負整數組成,例如 39、25、0-2 和 33967。
在 Micrsoft SQL Server 中,整數存儲的數據類型是Int,Smallint和 Tinyint。
Int 數據類型存儲數據的范圍大於 Smallint 數據類型存儲數據的范圍,
而 Smallint 據類型存儲數據的范圍大於Tinyint 數據類型存儲數據的范圍。
使用 Int 數據存儲數據的范圍是從 -2 147 483 648 到 2 147 483 647(每一個值要求4個位元組存儲空間)。
使用 Smallint 數據類型時,存儲數據的范圍從 -32 768 到 32 767(每一個值要求2個位元組存儲空間)。
使用Tinyint 數據類型時,存儲數據的范圍是從0 到255(每一個值要求1個位元組存儲空間)。
精確小 數數據在 SQL Server 中的數據類型是 Decimal 和 Numeric。這種數據所佔的存儲空間根據該數據的位數後的位數來確定。
在SQL Server 中,近似小數數據的數據類型是 Float 和 Real。例如,三分之一這個分數記作。
3333333,當使用近似數據類型時能准確表示。因此,從系統中檢索到的數據可能與存儲在該列中數據不完全一樣。
=======================================================================================
SQL Server的數據類型介紹(二)
(6)貨幣數據表示正的或者負的貨幣數量 。
在 Microsoft SQL Server 中,貨幣數據的數據類型是Money 和 Smallmoney 。
而Money數據類型要求 8 個存儲位元組,Smallmoney 數據類型要求 4 個存儲位元組。
(7)特殊數據類型
特殊數據類型包括前面沒有提過的數據類型。特殊的數據類型有3種,即Timestamp、Bit 和 Uniqueidentifier。
Timestamp 用於表示SQL Server 活動的先後順序,以二進投影的格式表示。Timestamp 數據與插入數據或者日期和時間沒有關系。
Bit 由 1 或者 0 組成。當表示真或者假、ON 或者 OFF 時,使用 Bit 數據類型。
例如,詢問是否是每一次訪問的客戶機請求可以存儲在這種數據類型的列中。
Uniqueidentifier 由 16 位元組的十六進制數字組成,表示一個全局唯一的。
當表的記錄行要求唯一時,GUID是非常有用。例如,在客戶標識號列使用這種數據類型可以區別不同的客戶。
=======================================================================
用戶定義的數據類型
用戶定義的數據類型基於在 Microsoft SQL Server 中提供的數據類型。當幾個表中必須存儲同一種數據類型時,
並且為保證這些列有相同的數據類型、長度和可空性時,可以使用用戶定義的數據類型。
例如,可定義一種稱為 postal_code 的數據類型,它基於 Char 數據類型。
當創建用戶定義的數據類型時,必須提供三個數:數據類型的名稱、所基於的系統數據類型和數據類型的可空性。
(1)創建用戶定義的數據類型
創建用戶定義的數據類型可以使用 Transact-SQL 語句。系統存儲過程 sp_addtype 可以來創建用戶定義的數據類型。其語法形式如下:
sp_addtype {type},[,system_data_bype][,'null_type']
其中,type 是用戶定義的數據類型的名稱。system_data_type 是系統提供的數據類型,例如 Decimal、Int、Char 等等。
null_type 表示該數據類型是如何處理空值的,必須使用單引號引起來,例如'NULL'、'NOT NULL'或者'NONULL'。
例子:
Use cust
Exec sp_addtype ssn,'Varchar(11)','Not Null'
創建一個用戶定義的數據類型 ssn,其基於的系統數據類型是變長為11 的字元,不允許空。
例子:
Use cust
Exec sp_addtype birthday,datetime,'Null'
創建一個用戶定義的數據類型 birthday,其基於的系統數據類型是 DateTime,允許空。
例子:
Use master
Exec sp_addtype telephone,'varchar(24),'Not Null'
Eexc sp_addtype fax,'varchar(24)','Null'
創建兩個數據類型,即 telephone 和 fax
(2)刪除用戶定義的數據類型
當用戶定義的數據類型不需要時,可刪除。刪除用戶定義的數據類型的命令是 sp_droptype {'type'}。
例子:
Use master
Exec sp_droptype 'ssn'
注意:當表中的列還正在使用用戶定義的數據類型時,或者在其上面還綁定有默認或者規則時,這種用戶定義的數據類型不能刪除。
③ sql語言中,各種數據類型代表的含義是什麼
(1)數值型
數值是諸如32 或153.4 這樣的值。MySQL 支持科學表示法,科學表示法由整數或浮點數後跟「e」或「E」、一個符號(「+」或「-」)和一個整數指數來表示。1.24E+12 和23.47e-1 都是合法的科學表示法表示的數。而1.24E12 不是合法的,因為指數前的符號未給出。
浮點數由整數部分、一個小數點和小數部分組成。整數部分和小數部分可以分別為空,但不能同時為空。
數值前可放一個負號「-」以表示負值。
(2)字元(串)型
字元型(也叫字元串型,簡稱串)是諸如「Hello, world!」或「一個饅頭引起的血案」這樣的值,或者是電話號碼87398413這樣的值。既可用單引號也可用雙引號將串值括起來。
初學者往往分不清數值87398143和字元串87398143的區別。都是數字啊,怎麼一個要用數值型,一個要用字元型呢?關鍵就在於:數值型的87398143是要參與計算的,比如它是金融中的一個貨款總額;而字元型的87398143是不參與計算的,只是表示電話號碼,這樣的還有街道號碼、門牌號碼等等,它們都不參與計算。
(3)日期和時間型
日期和時間是一些諸如「2006-07-12」或「12:30:43」這樣的值。MySQL還支持日期/時間的組合,如「2006-07-12 12:30:43」。
(4)NULL值
NULL表示未知值。比如填寫表格中通訊地址不清楚留空不填寫,這就是NULL值。
我們用Create Table語句創建一個表,這個表中包含列的定義。例如我們在前面創建了一個joke表,這個表中有content和writer兩個列:
定義一個列的語法如下:
其中列名由col_name 給出。列名可最多包含64個字元,字元包括字母、數字、下劃線及美元符號。列名可以名字中合法的任何符號(包括數字)開頭。但列名不能完全由數字組成,因為那樣可能使其與數據分不開。MySQL保留諸如SELECT、DELETE和CREATE這樣的詞,這些詞不能用做列名,但是函數名(如POS 和MIN)是可以使用的。
列類型col_type表示列可存儲的特定值。列類型說明符還能表示存放在列中的值的最大長度。對於某些類型,可用一個數值明確地說明其長度。而另外一些值,其長度由類型名蘊含。例如,CHAR(10) 明確指定了10個字元的長度,而TINYBLOB值隱含最大長度為255個字元。有的類型說明符允許指定最大的顯示寬度(即顯示值時使用多少個字元)。浮點類型允許指定小數位數,所以能控制浮點數的精度值為多少。
可以在列類型之後指定可選的類型說明屬性,以及指定更多的常見屬性。屬性起修飾類型的作用,並更改其處理列值的方式,屬性有以下類型:
(1)專用屬性用於指定列。例如,UNSIGNED 屬性只針對整型,而BINARY屬性只用於CHAR 和VARCHAR。
(2)通用屬性除少數列之外可用於任意列。可以指定NULL 或NOT NULL 以表示某個列是否能夠存放NULL。還可以用DEFAULT,def_value 來表示在創建一個新行但未明確給出該列的值時,該列可賦予值def_value。def_value 必須為一個常量;它不能是表達式,也不能引用其他列。不能對BLOB 或TEXT 列指定預設值。
如果想給出多個列的專用屬性,可按任意順序指定它們,只要它們跟在列類型之後、通用屬性之前即可。類似地,如果需要給出多個通用屬性,也可按任意順序給出它們,只要將它們放在列類型和可能給出的列專用屬性之後即可。
2. MySQL的列(欄位)類型
資料庫中的每個表都是由一個或多個列(欄位)構成的。在用CREATE TABLE語句創建一個表時,要為每列(欄位)指定一個類型。列(欄位)的類型比數據類型更為細化,它精確地描述了給定表列(欄位)可能包含的值的種類,如是否帶小數、是否文字很多。
MySQL有整數和浮點數值的列類型,如表1所示。整數列類型可以有符號也可無符號。有一種特殊的屬性允許整數列值自動生成,這對需要唯一序列或標識號的應用系統來說是非常有用的。
類型 說明
TINYINT 非常小的整數
SMALLINT 較小整數
MEDIUMINT 中等大小整數
INT 標准整數
BIGINT 較大整數
FLOAT 單精度浮點數
DOUBLE 雙精度浮點數
DECIMAL 一個串的浮點數
表1:數值列類型
每種數值類型的名稱和取值范圍如表2所示。
類型說明 取值范圍
TINYINT[(M)] 有符號值:-128 到127
無符號值:0到255(0 到28 - 1)
SMALLINT[(M)] 有符號值:-32768 到32767(- 215 到215 - 1)
無符號值:0到65535(0 到21 6 - 1)
MEDIUMINT[(M)] 有符號值:-8388608 到8388607(- 22 3 到22 3 - 1 )
無符號值:0到16777215(0 到22 4 - 1)
INT[(M)] 有符號值:-2147683648 到2147683647(- 231 到231- 1)
無符號值:0到4294967295(0 到232-1)
BIGINT[(M)] 有符號值:-9223372036854775808 到 9223373036854775807(- 263到263-1)
無符號值:0到18446744073709551615(0到264 – 1)
FLOAT[(M, D)] 最小非零值:±1.175494351E - 38
DOUBLE[(M,D)] 最小非零值:±2.2250738585072014E - 308
DECIMAL (M, D) 可變;其值的范圍依賴於M 和D
表2:數值列類型的取值范圍
類型說明 存儲需求
TINYINT[(M)] 1位元組
SMALLINT[(M)] 2位元組
MEDIUMINT[(M)] 3位元組
INT[(M)] 4位元組
BIGINT[(M)] 8位元組
FLOAT[(M, D)] 4位元組
DOUBLE[(M, D)] 8位元組
DECIMAL (M, D) M位元組(MySQL < 3.23),M+2位元組(MySQL > 3.23 )
表3:數值列類型的存儲需求
MySQL提供了五種整型: TINYINT、SMALLINT、MEDIUMINT、INT和BIGINT。INT為INTEGER的縮寫。這些類型在可表示的取值范圍上是不同的。整數列可定義為UNSIGNED從而禁用負值;這使列的取值范圍為0以上。各種類型的存儲量需求也是不同的。取值范圍較大的類型所需的存儲量較大。
MySQL 提供三種浮點類型: FLOAT、DOUBLE和DECIMAL。與整型不同,浮點類型不能是UNSIGNED的,其取值范圍也與整型不同,這種不同不僅在於這些類型有最大值,而且還有最小非零值。最小值提供了相應類型精度的一種度量,這對於記錄科學數據來說是非常重要的(當然,也有負的最大和最小值)。
在選擇了某種數值類型時,應該考慮所要表示的值的范圍,只需選擇能覆蓋要取值的范圍的最小類型即可。選擇較大類型會對空間造成浪費,使表不必要地增大,處理起來沒有選擇較小類型那樣有效。對於整型值,如果數據取值范圍較小,如人員年齡或兄弟姐妹數,則TINYINT最合適。MEDIUMINT能夠表示數百萬的值並且可用於更多類型的值,但存儲代價較大。BIGINT在全部整型中取值范圍最大,而且需要的存儲空間是表示範圍次大的整型INT類型的兩倍,因此只在確實需要時才用。對於浮點值,DOUBLE佔用FLOAT的兩倍空間。除非特別需要高精度或范圍極大的值,一般應使用只用一半存儲代價的FLOAT型來表示數據。
在定義整型列時,可以指定可選的顯示尺寸M。如果這樣,M應該是一個1 到255的整數。它表示用來顯示列中值的字元數。例如,MEDIUMINT(4)指定了一個具有4個字元顯示寬度的MEDIUMINT列。如果定義了一個沒有明確寬度的整數列,將會自動分配給它一個預設的寬度。預設值為每種類型的「最長」值的長度。如果某個特定值的可列印表示需要不止M個字元,則顯示完全的值;不會將值截斷以適合M個字元。
對每種浮點類型,可指定一個最大的顯示尺寸M 和小數位數D。M 的值應該取1 到255。D的值可為0 到3 0,但是不應大於M - 2(如果熟悉ODBC 術語,就會知道M 和D 對應於ODBC 概念的「精度」和「小數點位數」)。M和D對FLOAT和DOUBLE 都是可選的,但對於DECIMAL是必須的。在選項M 和D時,如果省略了它們,則使用預設值。
2.2字元串列類型
MySQL提供了幾種存放字元數據的串類型,其類型如下:
類型名 說明
CHAR 定長字元串
VARCHAR 可變長字元串
TINYBLOB 非常小的BLOB(二進制大對象)
BLOB 小BLOB
MEDIUMBLOB 中等的BLOB
LONGBLOB 大BLOB
TINYTEXT 非常小的文本串
TEXT 小文本串
MEDIUMTEXT 中等文本串
LONGTEXT 大文本串
ENUM 枚舉;列可賦予某個枚舉成員
SET 集合;列可賦予多個集合成員
表4:字元串列類型
下表給出了MySQL 定義串值列的類型,以及每種類型的最大尺寸和存儲需求。對於可變長的列類型,各行的值所佔的存儲量是不同的,這取決於實際存放在列中的值的長度。這個長度在表中用L 表示。
類型說明
最大尺寸
存儲需求
CHAR( M)
M 位元組
M 位元組
VARCHAR(M)
M 位元組
L + 1位元組
TINYBLOB, TINYTEXT
28- 1位元組
L + 1位元組
BLOB, TEXT
216 - 1 位元組
L + 2位元組
MEDIUMBLOB, MEDIUMTEXT
224- 1位元組
L + 3位元組
LONGBLOB, LONGTEXT
232- 1位元組
L + 4位元組
ENUM(「value1」, 「value2」, ...)
65535 個成員
1 或2位元組
SET (「value1」, 「value2」, ...)
64個成員
1、2、3、4 或8位元組
表5:串列類型最大尺寸及存儲需求
L 以外所需的額外位元組為存放該值的長度所需的位元組數。MySQL 通過存儲值的內容及其長度來處理可變長度的值。這些額外的位元組是無符號整數。請注意,可變長類型的最大長度、此類型所需的額外位元組數以及佔用相同位元組數的無符號整數之間的對應關系。例如,MEDIUMBLOB 值可能最多224 - 1位元組長並需要3 個位元組記錄其結果。3 個位元組的整數類型MEDIUMINT 的最大無符號值為224 - 1。這並非偶然。
2.3日期時間列類型
MySQL 提供了幾種時間值的列類型,它們分別是: DATE、DATETIME、TIME、TIMESTAMP和YEAR。下表給出了MySQL 為定義存儲日期和時間值所提供的這些類型,並給出了每種類型的合法取值范圍。
類型名 說明
DATE 「YYYY-MM-DD」格式表示的日期值
TIME 「hh:mm:ss」格式表示的時間值
DATETIME 「YYYY-MM-DD hh:mm:ss」格式
TIMESTAMP 「YYYYMMDDhhmmss」格式表示的時間戳值
YEAR 「YYYY」格式的年份值
表6:日期時間列類型
下面舉個例子:
這個例子創建一個student表,這個表中有name欄位,字元類型列,不允許NULL(空值)。有Chinese、Maths和English三個整數類型列。還有個Birthday日期類型列。
CREATE TABLE student
(
Name varchar(20) NOT NULL,
Chinese TINYINT(3),
Maths TINYINT(3),
English TINYINT(3),
Birthday DATE
)
④ sql資料庫中常用的數據類型有什麼
一、整數數據類型:整數數據類型是最常用的數據類型之一。
1、INT(INTEGER)
INT (或INTEGER)數據類型存儲從-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之間的所有正負整數。每個INT 類型的數據按4 個位元組存儲,其中1 位表示整數值的正負號,其它31 位表示整數值的長度和大小。
2、SMALLINT
SMALLINT 數據類型存儲從-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之間的所有正負整數。每個SMALLINT 類型的數據佔用2 個位元組的存儲空間,其中1 位表示整數值的正負號,其它15 位表示整數值的長度和大小。
二、浮點數據類型:浮點數據類型用於存儲十進制小數。浮點數值的數據在SQL Server 中採用上舍入(Round up 或稱為只入不舍)方式進行存儲。
1、REAL數據類型
REAL數據類型可精確到第7 位小數,其范圍為從-3.40E -38 到3.40E +38。 每個REAL類型的數據佔用4 個位元組的存儲空間。
2、FLOAT
FLOAT數據類型可精確到第15 位小數,其范圍為從-1.79E -308 到1.79E +308。 每個FLOAT 類型的數據佔用8 個位元組的存儲空間。 FLOAT數據類型可寫為FLOAT[ n ]的形式。n 指定FLOAT 數據的精度。n 為1到15 之間的整數值。
當n 取1 到7 時,實際上是定義了一個REAL 類型的數據,系統用4 個位元組存儲它;當n 取8 到15 時,系統認為其是FLOAT 類型,用8 個位元組存儲它。
三、二進制數據類型
1、BINARY
BINARY 數據類型用於存儲二進制數據。其定義形式為BINARY( n), n 表示數據的長度,取值為1 到8000 。在使用時必須指定BINARY 類型數據的大小,至少應為1 個位元組。BINARY 類型數據佔用n+4 個位元組的存儲空間。
在輸入數據時必須在數據前加上字元「0X」 作為二進制標識,如:要輸入「abc 」則應輸入「0xabc 」。若輸入的數據過長將會截掉其超出部分。若輸入的數據位數為奇數,則會在起始符號「0X 」後添加一個0,如上述的「0xabc 」會被系統自動變為「0x0abc」。
2、VARBINARY
VARBINARY數據類型的定義形式為VARBINARY(n)。 它與BINARY 類型相似,n 的取值也為1 到8000, 若輸入的數據過長,將會截掉其超出部分。
不同的是VARBINARY數據類型具有變動長度的特性,因為VARBINARY數據類型的存儲長度為實際數值長度+4個位元組。當BINARY數據類型允許NULL 值時,將被視為VARBINARY數據類型。
四、邏輯數據類型
1、BIT:BIT數據類型佔用1 個位元組的存儲空間,其值為0 或1 。如果輸入0 或1 以外的值,將被視為1。 BIT 類型不能定義為NULL 值(所謂NULL 值是指空值或無意義的值)。
五、字元數據類型:字元數據類型是使用最多的數據類型。它可以用來存儲各種字母、數字元號、特殊符號。一般情況下,使用字元類型數據時須在其前後加上單引號』或雙引號」 。
1、CHAR
CHAR 數據類型的定義形式為CHAR[ (n) ]。 以CHAR 類型存儲的每個字元和符號佔一個位元組的存儲空間。n 表示所有字元所佔的存儲空間,n 的取值為1 到8000, 即可容納8000 個ANSI 字元。
若不指定n 值,則系統默認值為1。 若輸入數據的字元數小於n,則系統自動在其後添加空格來填滿設定好的空間。若輸入的數據過長,將會截掉其超出部分。
(4)sql定義整數型擴展閱讀:
SQL包括了所有對資料庫的操作,主要是由4個部分組成:
1、數據定義:這一部分又稱為「SQL DDL」,定義資料庫的邏輯結構,包括定義資料庫、基本表、視圖和索引4部分。
2、數據操縱:這一部分又稱為「SQL DML」,其中包括數據查詢和數據更新兩大類操作,其中數據更新又包括插入、刪除和更新三種操作。
3、數據控制:對用戶訪問數據的控制有基本表和視圖的授權、完整性規則的描述,事務控制語句等。
4、嵌入式SQL語言的使用規定:規定SQL語句在宿主語言的程序中使用的規則。
⑤ SQL語句將字元串型轉化為整數型的函數是什麼
我關於sql函數方面的搜集資料。看了對函數你可能就會了解一些了。。。。首先樓主 寫的那條語句 絕對不能執行。。應該這樣寫
USE 資料庫名
GO
SELECT DISTINCT cuser
FROM cat
WHERE time ='' or time >'' or time <''
ORDER BY time
DESC
GO
你如果想把某列,或者某欄位 的數據 由 亂七八糟的轉換成大寫的 用這個 函數 UPPER
用法 UPPER (某欄位)
關於sql函數詳解 如下:
SQL函數,詳細描述如下: Avg函數 Avg函數,計算查詢中某一特定欄位資料的算術平均值。 語法為Avg(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數可 以是一個內部或使用者定義的,但不能為其它的SQL函數。 Avg函數在計算時,不包含任何值為 Null 的資料。 Count函數 Count函數,計算符合查詢條件的記錄條數。 語法為Count (運算式)。運算式,可為欄位名稱、*、多個欄位名稱、運算式、 或一個函數,此函數可以是一個內部或使用者定義的,但不能為其它的SQL函數。 Count 函數於計算時,不包含任何值為 Null 的資料。 但是,Count(*) 則計算所有符合查詢條件的記錄條數,包含那些Null的資料。 如果Count(欄位名稱) 的欄位名稱為多個欄位,將欄位名稱之間使用 & 分隔。 多個欄位當中,至少有一個欄位的值不為Null的情況下,Count函數才會計算為一條 記錄。如果多個欄位都為Null,則不算是一條記錄。譬如: SELECT Count(價格 & 代號) From 產品 First/Last函數 First函數、Last函數,傳回指定欄位之中符合查詢條件的第一條、最末條記錄 的資料。 語法為First(運算式) 和 Last(運算式)。運算式,可為欄位名稱、運算式、或 一個函數,此函數可以是一個內部或使用者定義的,但不能為其它的SQL函數。 Min/Max函數 Min函數、Max函數,傳回指定欄位之中符合查詢條件的最小值、最大值。 語法為Min(運算式) 和 Max(運算式)。運算式,可為欄位名稱、運算式、或一個 函數,此函數可以是一個內部或使用者定義的,但不能為其它的SQL函數。 StDev函數 StDev函數,計算指定欄位之中符合查詢條件的標准差。 語法為StDev(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數 可以是一個內部或使用者定義的,但不能為其它的SQL函數。 如果符合查詢條件的記錄為兩個以下時,StDev函數將傳回一個Null 值,該表示 不能計算標准差。 Sum函數 Sum函數,計算指定欄位之中符合查詢條件的資料總和。 語法為Sum(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數可 以是一個內部或使用者定義的,但不能為其它的SQL函數。 Sum函數可使用兩個欄位資料運算式,譬如計算產品的單價及數量欄位的合計: SELECT Sum(單價 * 數量) FROM 產品 Var函數 Var函數,計算指定欄位之中符合查詢條件的變異數估計值。 語法為Var(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數可 以是一個內部或使用者定義的,但不能為其它的SQL函數。 如果符合查詢條件的記錄為兩個以下時,Var函數將傳回一個Null 值,該表示不 能計算變異數。
⑥ sql數據類型有哪些
SQL數據類型有以下這些:
1、二進制數據類型。
二進制數據包括 Binary、Varbinary 和 Image
Binary 數據類型既可以是固定長度的(Binary),也可以是變長度的。
Binary[(n)] 是 n 位固定的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲空間的大小是 n + 4 個位元組。
Varbinary[(n)] 是 n 位變長度的二進制數據。其中,n 的取值范圍是從 1 到 8000。其存儲空間的大小是 n + 4個位元組,不是n 個位元組。
2、字元數據類型。
字元數據類型包括char、varchar和text。
字元數據是由字母、符號和數字的任意組合組成的數據。
varchar是可變長度字元數據,其長度不超過8kb。char是最大長度為8kb的固定長度字元數據。超過8kb的ASCII數據可以使用文本數據類型存儲。
3、Unicode 數據類型。
Unicode數據類型包括nchar、nvarchar和ntext。
在Microsoft SQL Server中,傳統的非Unicode數據類型允許使用由特定字元集定義的字元。在安裝SQL Server期間,允許選擇字元集。
在Unicode標准中,包含由各種字元集定義的所有字元。使用Unicode數據類型佔用的空間是使用非Unicode數據類型的兩倍。
4、日期和時間數據類型。
日期和時間數據類型包括 Datetime 和 Smalldatetime兩種類型。
日期和時間數據類型由有效的日期和時間組成。
例如,有效的日期和時間數據包括「4/01/98 12:15:00:00:00 PM」和「1:28:29:15:01AM 8/17/98」。
前一個數據類型是日期在前,時間在後。後一個數據類型是時間在前,日期在後。
在 Microsoft SQL Server中,日期和時間數據類型包括Datetime 和 Smalldatetime 兩種類型時,所存儲的日期范圍是從 1753 年 1 月 1 日開始,到9999 年12 月 31 日結束(每一個值要求 8 個存儲位元組)。
5、數字數據類型。
數字數據只包含數字。數字數據類型包括正數和負數、小數(浮點)和整數。
整數由正整數和負整數組成,如39、25、0-2和33967。在Microsoft SQL Server中,存儲在整數中的數據類型是int、smallint和tinyint。
int數據類型存儲的數據多於smallint數據類型,而smallint數據類型存儲的數據多於tinyint數據類型。
使用int數據類型存儲數據的范圍從-2 147 483 648到2 147 483 647(每個值需要四個位元組的存儲空間)。
6、貨幣數據類型。
在 Microsoft SQL Server 中,貨幣數據的數據類型是Money 和 Smallmoney
Money數據類型要求 8 個存儲位元組,Smallmoney 數據類型要求 4 個存儲位元組。
⑦ 易語言寫SQL SEVER資料庫,整數型變數應該怎麼表達
insert into 表名 (整數欄位,文本欄位) values ('"+ 到文本(整數型變數) +"','"+ 文本變數 +"')
調試看看
不行就這樣
insert into 表名 (整數欄位,文本欄位) values ("+ 到文本(整數型變數) +",'"+ 文本變數 +"')
⑧ SQL里的int類型
1、int、bigint、smallint 和 tinyint是使用整數數據的精確數字數據類型。
2、主要類型、范圍、存儲體如下:
1)bigint:從 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型數據,存儲 8 個位元組。
2)int:從 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型數據。存儲 4 個位元組
3)smallint:從 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型數據,存儲2 個位元組。
4)tinyint:從 0 到 255 的整型數據,存儲 1 位元組。
(8)sql定義整數型擴展閱讀:
1、int的定義:int是一種數據類型,在編程語言(C、C++、C#、Java等)中,它是用於定義整數類型變數的標識符。
2、int的概述:int的存在很廣泛,在目前在一般的家用電腦中,int佔用4位元組,32比特,數據范圍為-2147483648~2147483647[-2^31~2^31-1],在微型機中,int佔用2位元組,16比特,數據范圍為-32768~32767[-2^15~2^15-1]。使用printf輸出int佔用位元組數量:printf("%d",sizeof(int)); 除了int類型之外,還有short、long、long long類型可以表示整數。unsigned int 表示無符號整數,數據范圍為[0~2^32-1],unsigned int 表示無符號整數,數據范圍為[0~2^32-1]。
⑨ sql語句如何更新某列數值為整數型
(1)什麼資料庫?現在的頁面看不出來是什麼資料庫。
(2)現在該欄位的數據類型是什麼?
我的猜測:我看這些0很整齊,小數點後面0的位數是一樣的,也就是說明這個0是自動補的,我也查了前面你的那個類似欄位,也是小數點後14位(算上小數點後不是0的數字),那麼也就是說個人覺得你的數據類型應該mysql的decimal類型,因為個人所知的資料庫中只有這個(據說DB2上也有這個,不過我沒用過不知道)。
也就是說你的數據類型是decimal(xx,14),那麼就會出現這個情況,你可以用alter修改該欄位的欄位類型,update只能修改欄位的值,是沒辦法修改欄位的欄位類型的。而且因為decimal(xx,14)這個欄位屬性的關系,不管你怎麼update,最終都是這種情況。
⑩ 資料庫代碼如何定義四行整數
整數類型是資料庫中最基本的數據類型。
標准SQL中支持INTEGER和SMALLINT這兩種數據類型。MySQL資料庫除了支持這兩種數據類型以外,還擴展支持TINYINT、MEDIUMINT和BIGINT。下表從不同整數類型的位元組數、取值范圍等方面進行對比。