sql的set
A. sql set語句
如果你說的是SQL語句的話,那麼我從來沒見過set check的命令。。Alter table是有幾種帶SET關鍵字的子形式,常用的有SET DEFAULT為欄位設置預設值,SET NOT NULL 設置欄位非空等。這里的約束是用ADD CONSTRAINT子形式創建的如:
ALTER TABLE 評分
ADD CONSTRAINT CK_1 /*為約束指定一個名稱*/
CHECK /*CHECK關鍵字,約束*/
( 分數 >=0 and 分數<=0) /*CK_1約束的內容*/
樓主說的SET關鍵字常用於修改表數據的UPDATE語句中。而ALTER TABLE是對表的修改,表和表數據之間是不同的。
希望對你能有所幫助。
B. SQL中的SET是什麽意思
set
echo
off
是設置不把輸出的結果顯示在屏幕上。
echo
指的就是這個輸出。
C. SQL 語句里set是什麼意思啊
Update
表名
Set
FieldName
=
Value
。
就是設置當前表的某個欄位等於某個值,就是給欄位
賦值。
D. sql中的存儲過程set是什麼意思
由雙引號分隔的標識符可以是 Transact-SQL 保留關鍵字,或者可以包含 Transact-SQL 標識符語法規則通常不允許的字元。 語法SET QUOTED_IDENTIFIER { ON | OFF }注釋當 SET QUOTED_IDENTIFIER 為 ON 時,標識符可以由雙引號分隔,而文字必須由單引號分隔。當 SET QUOTED_IDENTIFIER 為 OFF 時,標識符不可加引號,且必須遵守所有 Transact-SQL 標識符規則。有關更多信息,請參見使用標識符。文字可以由單引號或雙引號分隔。 當 SET QUOTED_IDENTIFIER 為 ON 時,由雙引號分隔的所有字元串都被解釋為對象標識符。因此,加引號的標識符不必遵守 Transact-SQL 標識符規則。它們可以是保留關鍵字,並且可以包含 Transact-SQL 標識符中通常不允許的字元。不能使用雙引號分隔文字字元串表達式,而必須用單引號括住文字字元串。如果單引號 (') 是文字字元串的一部分,則可以由兩個單引號 ('') 表示。當對資料庫中的對象名使用保留關鍵字時,SET QUOTED_IDENTIFIER 必須為 ON。 當 SET QUOTED_IDENTIFIER 為 OFF(默認值)時,表達式中的文字字元串可以由單引號或雙引號分隔。如果文字字元串由雙引號分隔,則可以在字元串中包含嵌入式單引號,如省略號。 當在計算列或索引視圖上創建或操作索引時,SET QUOTED_IDENTIFIER 必須為 ON。如果 SET QUOTED_IDENTIFIER 為 OFF,則計算列或索引視圖上帶索引的表上的 CREATE、UPDATE、INSERT 和 DELETE 語句將失敗。有關計算列上的索引視圖和索引所必需的 SET 選項設置的更多信息,請參見 SET 中的使用 SET 語句時的注意事項。 在進行連接時,SQL Server ODBC 驅動程序和用於 SQL Server 的 Microsoft OLE DB 提供程序自動將 QUOTED_IDENTIFIER 設置為 ON。這可以在 ODBC 數據源、ODBC 連接特性或 OLE DB 連接屬性中進行配置。對來自 DB-Library 應用程序的連接,SET QUOTED_IDENTIFIER 設置默認為 OFF。 當創建存儲過程時,將捕獲 SET QUOTED_IDENTIFIER 和 SET ANSI_NULLS 設置,用於該存儲過程的後續調用。 當在存儲過程內執行 SET QUOTED_IDENTIFIER 時,其設置不更改。 當 SET ANSI_DEFAULTS 為 ON時,將啟用 SET QUOTED_IDENTIFIER。 SET QUOTED_IDENTIFIER 還與 sp_dboption 的 quoted identifier 設置相對應。如果 SET QUOTED_IDENTIFIER 為 OFF,則 SQL Server 使用 sp_dboption 的 quoted identifier 設置。有關資料庫設置的更多信息,請參見 sp_dboption 和設置資料庫選項。 SET QUOTED_IDENTIFIER 是在分析時進行設置的。在分析時進行設置意味著:SET 語句只要出現在批處理或存儲過程中即生效,與代碼執行實際上是否到達該點無關;並且 SET 語句在任何語句執行之前生效。 比較空值時必須小心。比較行為取決於選項 SET ANSI_NULLS 的設置。 當 SET ANSI_NULLS 為 ON 時,如果比較中有一個或多個表達式為 NULL,則既不輸出 TRUE 也不輸出 FALSE,而是輸出 UNKNOWN。這是因為,未知值不能與其它任何值進行邏輯比較。這種情況發生在一個表達式與 NULL 單詞進行比較,或者兩個表達式相比,而其中一個表達式取值為 NULL 時。例如,當 ANSI_NULLS 為 ON 時,以下比較總是輸出 UNKNOWN: ytd_sales NULL 只要變數包含 NULL 值,下列比較也輸出 UNKNOWN: ytd_sales @MyVariable 使用 IS NULL 或 IS NOT NULL 子句測試 NULL 值。這將增加 WHERE 子句的復雜性。例如,表 Northwind Customers 中的 Region 列允許空值。如果使用 SELECT 語句不僅測試其它值還測試空值,則必須包括 IS NULL 子句: SELECT CustomerID, CompanyName, Region FROM Northwind.dbo.Customers WHERE Region IN ('WA', 'SP', 'BC') OR Region IS NULL Transact-SQL 支持在與空值進行比較時,允許比較運算符返回 TRUE 或 FALSE。通過設置 ANSI_NULLS OFF 可將該選項激活。當 ANSI_NULLS 為 OFF 時,如果 ColumnA 包含空值,則比較操作 ColumnA = NULL 返回 TRUE;如果 ColumnA 除包含 NULL 外還包含某些值,則比較操作返回 FALSE。此外,兩個都取空值的表達式的比較也輸出 TRUE。當 ANSI_NULLS 設置為 OFF 時,SELECT 語句將返回 Customer 表中所有 Region 為空值的行: SELECT CustomerID, CompanyName, Region FROM Northwind.dbo.Customers WHERE Region = NULL 涉及 NULL 的計算均取值為 NULL,這是因為只要有一個因子為未知,結果肯定是 UNKNOWN。例如,如果 column1 為 NULL,則 column1 + 1 取值為 NULL。
E. SQL Server中的Set問題:急
set
相當於賦值
。。你這句就相當於賦值 變@date
比如
我們在update的時候一樣會用那個到set
就是要把一個
值賦值給一個變數的時候用到的
比如update 表一
set
name
='scl'
其實set就是在提示sql這個是個賦值語句 讓編譯器知道
然後把
scl的值賦值給name
F. Sql中的set和select賦值方式的區別
最近的項目寫的SQL比較多,經常會用到對變數賦值,而我使用SET和SELECT都會達到效果。
那就有些迷惑,這兩者有什麼區別呢?什麼時候哪該哪個呢?
經過網上的查詢,及個人練習,總結兩者有以下幾點主要區別:
假定有設定變數:
復制代碼 代碼如下:
DECLARE @VAR1 VARCHAR(1)
DECLARE @VAR2 VARCHAR(2)
1、SELECT可以在一條語句里對多個變數同時賦值,而SET只能一次對一個變數賦值,如下:
復制代碼 代碼如下:
SELECT @VAR1='Y',@VAR2='N'
-- 而SET要達到同樣的效果,需要:
SET @VAR1='Y'
SET @VAR2='N'
/*
說到這個,SQL內置的變數:@@ERROR 和 @@ROWCOUNT必須要在一句SQL語句中捕獲。如果用set分兩句來獲取它們,將獲取不完整,這時就應該用select來獲取值。
*/
2、表達式返回多個值時,用SET將會出錯,而SELECT將取最後一個值,如下:
復制代碼 代碼如下:
----以下假定Permission表有多個IsRight記錄
SELECT @VAR1 = IsRight FROM Permission --將取最後一個值
SET @VAR1 = IsRight FROM Permission --將報錯
3、表達式無返回值時,用SET將置變數值為NULL,用SELECT交保持變數值,如下:
復制代碼 代碼如下:
----以下假定Permission記錄為空
SET @VAR1 = '初始值'
SELECT @VAR1 = IsRight FROM Permission --此時@VAR1為'初始值'
SET @VAR1 = (SELECT IsRight FROM Permission) --此時@VAR1為NULL
4、使用標量子查詢時,如果無返回值,SET和SELECT一樣,都將置為NULL,如下:
復制代碼 代碼如下:
----以下假定Permission記錄為空
SET @VAR1 = '初始值'
SELECT @VAR1 =(SELECT IsRight FROM Permission ) --此時@VAR1為NULL
SET @VAR1 = ( SELECT IsRight FROM Permission) --此時@VAR1為NULL
G. SQL裡面set命令怎麼使用
set在sql里相當於賦值的作用 set a = b 就是讓a的值等於b,大多情況下都可以用select來代替
如select a = b。
但是只有在update 的語句里必須用set,而不能寫成update table select column = a (這個是錯誤的寫法)
必須是update table set column = a
H. SQL語句 set
SET是SQL Server 中對已經定義的變數賦值的方式。
示例:
語法:
UPDATE表名稱SET列名稱=新值WHERE列名稱=某值
table1
I. SQL中SET和SELECT的區別,說通俗點
select是查詢,只是把表中的數據顯示出來給你看。例:select
姓名
from
表1(查詢表1裡面的姓名欄位)
set是設置值,一般配合update更新用。例:update
表1
set
姓名=小明
(把表1的姓名欄位設置為小明)